mmmmÉWm
mmsmmmFvis
Retrocomputer Magazine
Anno il - Numero 57 - Febbraio 2016
m
Jurassic Neivs
Rivista aperiodica di Retrocomputer
Coordinatore editoriale:
Tullio Nicolussi [Tn]
Redazione:
redazione@jurassicnews.com
Hanno collaborato a questo numero:
Lorenzo [L2]
Salvatore Macomer [Sm]
Sonicher [Sn]
Besdelsec [Bs]
Lorenzo Paolini [Lp]
Mario Raspanti
Gizmo
Emery Fletcher
Damiano Cavicchio
Diffusione:
Lettura on-line sul sito o attraverso
il servizio Issuu.com; il download è
disponibile per gli utenti registrati.
Sito Web:
www.j ur assicne ws. com
Contatti:
info@jurassicnews.com
Copyright:
I marchi citati sono di copyrights
dei rispettivi proprietari.
La riproduzione con qualsiasi
mezzo di illustrazioni e di articoli
pubblicati sulla rivista, nonché
la loro traduzione, è riservata e
non può avvenire senza espressa
autorizzazione.
Jurassic Neivs
promuove la libera circolazione
delle idee
Jurassic News
E’ una fanzine dedicata al retro-
computing nella più ampia accezione del
termine. Gli ai'ticoli trattano in generale
dell’informatica a partire dai primi anni
‘80 e si spingono fino ...all’altro ieri.
La pubblicazione ha carattere
puramente amatoriale e didattico, tutte
le informazioni sono tratte da materiale
originale dell’epoca o raccolte su Internet.
La redazione e gli autori degli
articoli non si assumono nessuna
responsabilità in merito alla correttezza
delle informazioni riportate o nei
confronti di eventuali danni derivanti
dall’applicazione di quanto appreso sulla
rivista.
Il contenuto degli articoli è frutto
delle conoscenze, esperienze personali
e opinioni dei singoli autori; possono
pertanto essere talvolta non precise
o differire da fonti “ufficiose” come
Wikipedia e siti Web specializzati.
Sono gradite segnalazioni di errori,
imprecisioni 0 errate informazioni che
possono, a discrezione della redazione,
essere oggetto di errata-corrige in
fascicoli successivi.
Scrivere a:
redazione&iur assicnews.com
dettagliando il più possibile
l’argomentazione.
2
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Veterani cercasi.
Come è lontana l’Inghilterra!
Il museo nazionale “The National Museum of Computing
(TNMOC)” con sede a Londra, nel famoso Bletchley Park,
ha fra le sue iniziative dei veri e propri percorsi di retro¬
informatica che sono seguiti annualmente da circa 4500
studenti delle superiori.
Numerosissimi i progetti, le iniziative e importanti anche
gli sponsor (l’ultimo è Fujitsu) che consentono di portare
avanti iniziative di un certo spessore.
Fin qui quello che manca in Italia, anche se le iniziative
private ci sono
e sono degne del
massimo rispetto.
La collezione ricca
di reperti (uno per
tutti il famosissimo
Colossus) ha
come massima
numerosità il
famoso micro BBC,
uscito nel 1981 e diffusissimo come macchina da studio sia
nelle scuole che nelle case inglesi.
Ora questa numerosissima collezione di micro BBC
abbisogna di cure e i volontari non sono mai abbastanza.
Ecco dunque che il museo cerca veterani (proprio così li
chiama) che abbiano dimestichezza con la macchina nei
suoi aspetti, hardware, software e periferiche varie.
L’obiettivo è la cultura.
E le istituzioni pubbliche italiane?
Assenti.
C.v.d.
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
3
LAe ditoriate
Veterani cercasi
L'indecibilità (parte 2)
TAMC
ILr.acco.nta
Automatik (27) - Nosferatus
Gorne* eravamo
Due nomi quasi dimenticati
SNOBOL (parte 4)
4
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Jurassic News - II contenuto di questo fascicolo
Revocarli pubwa-
OK, il prezzo è giusto
Lo sviluppo del linguaggio C
Super QL 16.
i L^òo^Qto ^rj fD^
Il mio Z80
Biblioteca
DELETE. A Design History of Computer Vapourware
Geriatrie Linux
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
5
OK , il prezzo è giusto!
di Tullio Nicolussi
P eriodicamente se ne parla: qual
è il valore di un retro computer e
per conseguenza qual è il prezzo
equo da sborsare per acquistarne uno?
Nonostante ci sia qualche tentativo di
compilare un listino identificando per ogni
oggetto una fascia di prezzo, tali iniziative
sono destinate a suscitare l’ilarità di molti e
l’irritazione di altrettanti conoscitori e po¬
tenziali appassionati di reti'o informatica.
Il problema non è l’impreparazione di chi
compila i listini (svarioni a parte). Il fatto è
che è ancora un mercato molto legato alla
nazionalità. Cioè un sistema comune in Ita¬
lia, ad esempio VM24, potrebbe essere raro
negli States e quindi spuntare un buon gap
di diffeT'enziale di prezzo fra le due nazioni.
Spesso anch’io mi sono trovato davanti al
dilemma se comprare o desistere, al punto
che come regola generale mi sono ripromes¬
so di non acquistare mai se il prezzo richie¬
sto supera i 50 Euro, qualunque sia lo stato
dell’apparecchio proposto.
50 Euro è una soglia psicologica più che
un dato di valenza rispetto al prodotto. Tut¬
tavia sarei disposto a più di una eccezione
se la richiesta riguardasse un pezzo parti¬
colarmente significativo. Non dico un pez¬
zo “raro”, per il quale le quotazioni esulano
dall’aspetto retro-computer e sfociano nel
campo della stima dei reperti artistici. Un
Apple I non si discute, ovviamente!
Già per un Lisa potrei anche arrivare ai
100 Euro, ben conscio di star prendendo un
qualcosa che non funziona o che è molto dif¬
ficile da riparare un giorno che avesse deci¬
so di “passare a miglior vita”. Non spenderei
mai 100 Euro per un C64, nemmeno man¬
casse alla mia collezione, o per uno Spec-
trum...
Va bene, queste due ultime menziona¬
te sono macchine comuni, nel senso che si
può ragionevolmente rifiutare l’acquisto
oggi per trovare domani lo stesso prodot¬
to a prezzo equivalente o inferiore. Quindi
una qualche idea della fascia di prezzo di un
certo reperto la abbiamo: forse ce la siamo
fatta mediando le aste su eBay? Può essere:
6
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
La filosofia del retrocomputing
penso che chiunque ci faccia un giro su eBay
prima di vendere/comprare qualsiasi cosa.
Molti commentano il valore presunto della
loro collezione, appena qualche incauto ven¬
ditore posta un articolo a prezzo esagerato.
Queste “uscite dal seminato”, che apparen¬
temente sembrano tutte frutto dei tentativi
di utenti non esperti del comparto, in realtà
qualche volta ini fanno sospettare diversa-
mente.
Ho una opinione in proposito e cioè che ci
siano due specie di venditori “fuori bersa¬
glio”: gli inconsapevoli e i furbastri.
Dei primi c’è poco da dire: ci provano a
vendere il loro bravo C64 a 200 Euro e il
loro bravissimo Amiga 500 a peso d’oro.
Ci provano e di solito sono sbeffeggiati con
lazzi e sberleffi degni della migliore gogna
mediatica.
I secondi, cioè i furbastri, mi preoccupano
un pochino di più. Ci sono quelli (almeno un
paio in Italia) che vendono le macchine a
pezzi. A seguire un attimo le loro aste si ca¬
pisce che hanno preso un computer, ponia¬
mo un Amiga, l’hanno smontato, tolti i chip
e tentano di realizzare un totale largamente
superiore a quello che ragionevolmente (e
lo sanno bene) potrebbero ricavare da una
macchina intonsa.
E’facile fare due conti: so che potrei ven¬
dere diciamo a 100 Euro quell’Amiga com¬
pleto con una certa dotazione di software e
con i suoi manuali. Ma invece ne ricavo 20
pezzi (per non esagerare), che venduti a 15
euro cadauno (cosa vuoi che siano 15 Euro
quando ti serve proprio quel particolare?),
ne ricavo 300 di Euro e comunque 150 se ne
vendo anche solo 10.
Ottenere 20 pezzi da un Amiga non è diffici¬
le se ci si mette di impegno, basta comincia¬
re con l’involucro, due manuali, un joystick,
l’alimentatore, un disco esterno, tre giochi
in confezione originale, un set completo di
50 floppy usati con giochi a go-go, qualche
rivista... E poi si comincia a smontare e via
le ROM di kickstai't (quante ne abbiamo vi¬
ste su eBay?), la RAM, i chip Paula, etc...,
Spero veramente di non stare dando stra¬
ne idee a qualcuno...
Ammetto che recuperare un set di chip
Amiga potrebbe risolvere il problema del
sistema che abbiamo in casa e che risulta
mancante proprio di ciò che viene offerto,
ma dal punto di vista del conservatore non
vorrei mai vedere un sistema funzionante
smembrato per bramosia di qualche Euro!
Inoltre c’è un effetto collaterale spiacevole:
quando tizio ha venduto i pezzi più appetibi¬
li (e più cari) è facile che non si tenga in casa
un case o una tastiera semi cannibalizzata,
con il T'isultato che la rottamazione toglie
definitivamente dalla circolazione quello
che poteva essere un degno partecipante ad
una collezione.
Credo in ultima analisi che la lievitazione
dei prezzi di qualche reperto, dichiarata-
mente non funzionante, sia dovuta anche a
questa pratica.
Che fare?
Non ho soluzioni. Potremmo tutti non com¬
prare pezzi singoli obbligando chi vende a
quotare “vuoto per pieno” l’intera macchi¬
na. Potremmo stabilire ad esempio una
quotazione massima per il sistema non fun¬
zionante, qualunque esso sia (nei limiti della
possibilità di effettuare una classificazione
omogenea).
Tutte cose facili a dirsi ma di difficile rea¬
lizzazione.
La cosa migliore però è il comportamen¬
to etico di ciascuno di noi e che credo debba
far parte del bagaglio dell’appassionato di
retro computer, così come di qualsiasi alti'o
genere di collezionismo.
(=)
7
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Silicon Graphics - INDY
di Mario Raspanti
Incipit
E’ ormai passato molto tempo dall’arti¬
colo sulla Silicon Graphics Indigo, appar¬
so su Jurassic News N0.27. Oggi vediamo
la macchina che a questo modello ha fatto
seguito, e che insieme alla successiva 02 ha
forse rappresentato il modello più popolare
di casa Silicon Graphics (o SGI).
Il contesto
iamo nel 1993. Presidente del Con¬
siglio è Carlo Azeglio Ciampi. Alla
Casa Bianca si insedia Bill Clinton.
Al cinema esce Jurassic Park, cui la stessa
SGI ha pesantemente contribuito e che ap¬
parirà nella sua pubblicità dell’epoca (Buil¬
ding a better dinosaur). La Intel ha appena
presentato il nuovo precessore Pentium 60
MHz, e i PC di fascia alta già in circolazione
sono dei 486DX-33 o 486DX2-66, di solito
con 102 MBytes di RAM. Il sistema opera¬
tivo corrente è Windows 3.1, ma i giochi non
sono ancora fatti e nel dubbio la stessa Mi¬
crosoft gli affianca anche la prima versione
di Windows NT, anch’essa chiamata 3.1, e la
versione 2.1 di OS/2, lenta e pesante (OS/2
Warp è ancora lontano). Nel campo profes¬
sionale ci sono le workstation DEC 3000, la
IBM RS/6000 e la SUN SparcStation 10.
In questo contesto la Silicon Graphics so¬
stituisce la “piccola” di casa, ossia la sua
prima e finora unica macchina desktop, di-
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Pro v.a, Hardware.
L’analisi dei sistemi che hanno fatto l'informatica
videndola in due modelli:
La Indigo2, che della Indigo eredi¬
ta il nome e la destinazione professionale,
è un enorme desktop/deskside (può essere
montato anche in verticale con due appositi
sostegni, forniti di serie) da circa 50 x 50 x
15 cm e 20 Kg di peso, di un singolare colo¬
re verde/blu. La macchina è l'obustissima,
performante e molto espandibile; in seguito
conoscerà una seconda giovinezza con una
seconda serie modificata, la Indigo2 Im¬
pact, con nuovi processori e nuove schede
grafiche, e con la carrozzeria colore fucsia
0 ).
La Indy, più snella, leggera ed eco¬
nomica, è meno espandibile ma più versatile
e già dotata di serie di una impressionante
quantità di interfacce e connessioni.
La macchina ojft'e di serie uri processore
RISC ad almeno 100 MHz, grafica ad alta
risoluzione con 16 milioni di colori ed accele¬
razione 3D, quattro canali audio, digitaliz¬
zatori audio e video incorporati, due diversi
standard Ethernet, ISDN, due porte seriali,
una SCSI, una parallela ed un sistema ope¬
rativo Unix-based con una interfaccia gra¬
fica evoluta.
Mentre è facile a posteriori comprendere
la destinazione commerciale della Indigo2,
la Indy occupa una posizione più sfumata.
A chi era indirizzata questa macchina, più
brillante della sorella ma tutto sommato
meno performante e ancor meno espandibi¬
le, ad un prezzo che (seppur basso in termini
SGI) la separava comunque nettamente dai
PC di fascia alta? Probabilmente la Indy è
stata in qualche modo una macchina-esca,
pensata per attirare verso iprodotti SGI una
clientela più vasta ed eterogenea di quella
già consolidata. Senza dubbio, il grande
successo che ebbe (all’estero) nei computer
center delle università ed affini avvicinò al
marchio Silicon Graphics un vasto pubblico
di studenti e futuri professionisti e, come ve¬
dremo, creò un vasto movimento di interes¬
se intorno alla macchina.
La macchina
La Indy si presenta quasi come un tipico
desktop dell’epoca, ossia un parallelepipedo
piatto a sviluppo orizzontale, di circa 40x35
cm ed alto circa 8 cm, concepito per stare
sotto il monitor (Figura 2). Non proprio ti¬
pico, perché la macchina ha diverse pecu¬
liarità di design: innanzitutto il colore è un
blu acceso, movimentato da un particolare
effetto granito, mentre tastiera ed accesso¬
ri hanno la stessa finitura ma in colore gri¬
gio. Un gradino atti'aversa obliquamente la
macchina, movimentandone la forma. Di
una estrema pulizia il design del frontale,
dove non troviamo nessuna apertura ma
solo il tasto di accensione con la relativa
spia (Figura_3), un minuscolo tasto di re¬
set nascosto in una scanalatura e due tasti
triangolari per la regolazione del volume (!)
dell’altoparlante interno. Non è previsto un
alloggiajnento interno per un CD o una uni¬
tà a nastro magnetico, che vanno collegati
esternamente; è invece possibile montare
un floppy drive interno, cui si accede dal
fianco destro della macchina (Vedi la foto di
apertura) e che deve avere l’espulsione sof-
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
9
10
tware (à la macintosh), perché non è previsto
il solito pulsante. Come si vede, non è l’origi¬
nalità quella che manca.
La Indy si apre sfilando verso Lavanti l’in¬
tera copertura plastica (detta skin in casa
SGI).
Il lato sinistro (vedi Figura_4) è intera¬
mente occupato dall’alimentatore, montato a
sbalzo e trattenuto da una sola vite e da un
incastro. Sul frontale troviamo in posizione
centrale la CPU, montata su una propria
scheda e pi'ovvista di una impressionante
(per l’epoca) alettatura di raffreddamento, e
a destra i dischi, rivolti come si è detto verso
il fianco destro. La parte posteriore è occupa¬
ta dalla scheda madre, sulla quale è montata
orizzontalmente la scheda video. Resta spa¬
zio per altre schede, da montare superior¬
mente a quest’ultimo.
L’interno è molto pulito e le parti principali
sono tutte rapidamente accessibili. Avendo i
pezzi di ricambio, una Indy guasta
può essere fatta ripartire in pochi
secondi e con un normale cacciavite.
La costruzione sembra invece deci¬
samente gracile in confronto alle al¬
tre macchine della stessa casa, tutte
costruite come un carro annoto. In
particolare il pesante alimentatore
sembra decisamente posticcio, ma
devo ammettere che non si è mai
staccato.
Come al solito in casa Silicon la
stessa macchina era disponibile in
varie soluzioni e configurazioni. Per
la CPU erano disponibili non meno
di dodici CPU diverse, tutti proces¬
sori MIPS RISC con velocità da 100
a 200 MHz, qui elencati in ordine
crescente di potenza:
R4000PC-100
R4000SC-100
R4600PC-100 e 133
R4600SC-133
R4400SC-100,150,175 e 200
R5000PC-150
R5000SC-150 e 180
La R4600 venne introdotta dopo la R4400,
ma resta meno performante di quest’ultimo.
Le versioni PC sono prive di una memoria
cache interna e, a parità di clock, sono sensi-
bilmente più lente delle versioni SC. La RAM
(Figura_5) era costituita da comuni moduli
SIMM tipo PS/2 con parità, 36 bit su 72 pin,
usati anche sulla Indigo R4000 e sulla Indi-
go2 e con una capacità fino a 32 MBytes per
modulo. Per la particolare architettura i mo¬
duli devono essere inseriti in gruppi di quat¬
tro per volta.
Le opzioni grafiche erano invece tre e, con le
loro prestazioni tutto sommato vicine a quel¬
le della precedente Indigo, sembrano stra-
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Prov.a , Hardware.
L’analisi dei sistemi che hanno fatto /'informatica
namente sotto tono per una macchina così
innovativa:
XL8 8 bpp, 1280x1024 oppure 1024x768,
256 colori
XL24 24 bpp, 1280x1024 oppure 1024x768,
16 milioni di colori
XZ 24 bpp, 1280x1024 oppure 1024x768,
16 milioni di colori e accelerazione 3D.
Nel complesso le prestazioni sono
ottime in 2D, ma piuttosto anemi¬
che in 3D. Basti dire che la scheda
XZ, l’unica con accelerazione 3D
hardware, veniva sconsigliata sulle
Indy R5000 perché in questo caso la
CPU era più veloce della GPU a ge¬
stire le trasformazioni, e la presenza
di una XZ rallentava la macchina.
Naturalmente chi aveva bisogno di
prestazioni veramente superiori ve¬
niva indirizzato verso un sistema Indigo2.
Tutte le schede gestivano come abbia¬
mo visto due risoluzioni fisse: 1024x768 e
1280x1024. La risoluzione poteva essere
cambiata in software o automaticamente via
hardware, tramite un contatto nel connetto¬
re video che, per i monitor SGI, riconosceva
la periferica video in uso.
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
11
12
Lo spazio per i dischi (Figura_6) è molto ri¬
dotto e la Indy accetta al massimo due unità
a mezza altezza, ognuna inserite in una pro¬
pria slitta a scatto in metallo molto razionale
(Figura_y) e montate sovrapposte. L’unità
inferiore di solito contiene l’hard disk; nel¬
la superiore può essere alloggiato un floppy
disk o, come nella macchina qui raffigura¬
ta, un floptical da 21 MBytes (vedi Jurassic
News No. 33). Tutte le unità sono natural¬
mente SCSI. Quando si montavano due hard
disk veniva consigliato di limitarsi ad unità
da 10.000 RPMpiuttosto che da 15.000 RPM,
comuni sulle workstation high-end, per evi¬
tare problemi di surriscaldamento. Nel caso
il bay superiore restasse inutilizzato la SGI
raccomandava di lasciare comunque inseri¬
ta la relativa slitta metallica, che contribuiva
a sopportare il peso del monitor sovrastante.
Le interfacce
Qui la Indy si rivela veramente difficile da
battere, e il pannello posteriore (Figura_8)
è praticamente una distesa di connettori. Da
sinistra, in basso troviamo una fila di cinque
prese jack stereo da 3.5 mm: nell’ordine tro¬
viamo la presa di cuffia, l’entrata microfono,
l’entrata di linea, l’uscita di linea e l’in/out di¬
gitale, T'iconfigurabile via software in modo
da ottenere quattro canali. Sopi'a a questi
la grande presa 13W3 per il monitor (RGB,
sync-on-green) e la piccola mini-DIN per la
sincronizzazione degli occhiali stereo (stiamo
parlando di vent’annifa!).
Ricoi'diamo che in casa SGI la presa 13W3
ha un cablaggio leggermente diverso da mo¬
dello a modello (e anche leggermente diverso
da SUN, IBM ecc...) e che un adattatore VGA,
necessario per connettere un monitor odier¬
no, non è detto che funzioni al primo colpo.
Procedendo verso destra troviamo in suc¬
cessione tre ingressi video: un con¬
nettore RCA, un ingi'esso S-Video ed
una porta video proprietaria, dedi¬
cata ad una speciale IndyCam (più
olti'e) e vagamente somigliante ad
un DVI.
Sopi'a a questa abbiamo la presa
D a 15 poli per una rete thick ether-
net. Più in alto due tappi coprono le
finestre dedicate ad eventuali schede
accessorie.
Procedendo verso destra, una eti-
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Pro v,a, Hardware.
L’analisi dei sistemi che hanno fatto /'informatica
chetta con un triangolo rosso copre una pre¬
sa ISDN, che meccanicamente è uguale alla
successiva presa di rete RJ45, onde evitare
costosi errori nell’inserire i cavi. L’interfaccia
di rete è una sola, nel senso che il connettore
thick ethernet e il connettore RJ sono in alter¬
nativa - o si usa l’uno o l’altro.
Seguono le prese tastiera e mouse, che per
la prima volta in casa SGI sono unità stan¬
dard PS/2, e due porte seriali su connettore
mini-DIN, come allora usava anche Apple.
Infine un connettore SCSI per unità esterne
e, sopra a questo, una porta parallela su con¬
nettore D a 25poli. All’estremità destra infine
troviamo l’alimentatore con la sua presa per
il cavo di rete.
Serve altro?
Eccome!
Sempre nel campo hardware, la Indy ha
ancora un paio di ciliegine da mettere sul ge¬
lato.
La prima è la Indy Cam (Figura_g), che
potrebbe essere considerata la prima Web¬
Cam della storia: una piccola videocamera,
color grigio-granito come tutti gli
accessori Indy, destinata al telecon-
ferencing (...nel 1993, ricordiamolo)
ma anche ampiamente usata per la
produzione di piccoli (e ingombran¬
ti) video home-rnade. Va ricordato
che la Indy Cam può essere collegata
soltanto ad una Indy, ma il digita¬
lizzatore audio/video (di serie!) di
quest’ultimo funziona perfettamente
anche con gli altri ingressi, CVBS o
S-Video, a cui può essere collega¬
to qualunque sorgente video. Uni¬
co problema, produce files non compressi e
quindi relativamente ingombranti, che erano
una costante dannazione degli amministra¬
tori nei centri di calcolo. Se proprio si vole¬
va andare sul pesante erano disponibili due
diverse schede opzionali, da montare in pig-
gyback sulla scheda video, per la compres¬
sione video in tempo reale.
La Indy naturalmente poteva montare an¬
che tutta una gamma di accessori generici,
come il mouse tridimensionale Spaceball (Fi¬
guralo), array di pulsanti e di manopole,
tavolette grafiche ecc.
Infine il sacro Graal dei possessori di Indy,
che purtroppo non siamo in grado di mo¬
strarvi, è la scheda Ultra-64. Questa, che
andava montata anch’essa sopra la scheda
video, è la parte hardware del sistema di svi¬
luppo per Nintendo 64.
E’ naturale che i videogiochi per piccole
consolle venissero sviluppati su altri sistemi
più potenti e più veloci; la stessa cosa accade
anche adesso. Dove è nato SuperMario 64?
Adesso lo sapete!
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
13
Altri rarissimi accessori (anche se non fan¬
no parte dell’hardware in senso stretto) sono
la borsa originale per il d'asporto della Indi /
(mentre ricordiamo che non è mai esistito un
portatile Silicon Graphics; se ne intravede
uno fasullo nel film Twister) e una inverosi¬
mile valigetta 24 ore a forma di Indi), da cui
si distingue solo per la presenza del manico,
prodotta -pare- in soli 50 esemplari usando
gli stampi originali.
Il software
E’ ovviamente h'ix, versione Silicon
Graphics di Unix, che come la maggior parte
dei sistemi Unix ha prestazioni elevatissime
e non si pianta mai. Ne sono esistite nume¬
rose versioni, alcune molto diffuse ed alcune
limaste allo stadio di sigla; l’esemplare in
oggetto monta una versione 6.2, ma la Indi) è
in grado di montare fino alla maggior parte
delle versioni 6.5.
Prov.a , Hardware.
L’analisi dei sistemi che hanno fatto l’informatica
Monkty IsIam/?:
Toniche»!
3 DeskTop ScTecteti Fn/emct
System Help
(/r i/soiew
iVieLflOi?»
■ fJcsks OverView
Qpe/view Hcsk jj Ululo*
ctomusWr
All’accensione la Indi)
emette un hip, seguito
da un breve stacchetto
musicale (una carat¬
teristica di molte mac¬
chine Silicon Graphics,
ognuna con un motivet-
to diverso) e dalla com¬
parsa della schermata
di welcome. Quando la
macchina ha completa¬
to la diagnostica la spia
di accensione da T'ossa
diventa verde e la Indy
offre, per qualche secon¬
do, la possibilità di inter¬
romperla per richiedere
una diagnostica più approfondita (una cosa
veramente lunga) o effettuare operazioni di
sistema, come un upgrade del sistema ope¬
rativo. Dopodiché carica Irix e presenta la
schermata di login.
L’estetica della GUI Motif (Figura_n_i2) è
sobria e persino austera in confronto alle at¬
tuali vei'sioni Windows e Linux, ma in queste
macchine ogni dettaglio, dai font ai colori,
era attentamente studiato per massimizzare
la produttività e per non
stancare l’utente duran¬
te lunghe ore davanti al
monitor, non certo per
impressionare gli ami¬
ci. La Indy in esame è
una R4400SC-200MHZ
con una scheda grafica
XL24, ossia una confi¬
gurazione medio-alta
per una Indy, ma non
certo paragonabile ad
una macchina attuale.
Eppure la responsività
della GUI è molto mag¬
giore: al tocco del mouse
le finestre si aprono subi¬
to, i programmi partono
immediatamente, il feedback è istantaneo. Ci
si dimentica presto della clessidra che ci fa
compagnia nel nostro solito PC, e soprattutto
non si deve riavviare mai. In senso letterale:
la Silicon Graphics raccomandava di lascia¬
li sempre accese le sue macchine, e del resto
l’unico motivo per spegnerle era un guasto
hardware.
Sotto la GUI c’è, come abbiamo detto, Unix,
con tutto quel che comporta ma anche con
alcune estensioni. Una esclusività h'ix è un
b«Dl*z« DIMM
SFF'W SCW«SS« Gib
Zfiui drùcc*
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
15
comodo Toolchest, in alto a sinistra, con i
principali comandi di sistema, tra cui una se¬
rie di approfonditi Confidence tests per tutte
le periferiche presenti e un Icon catalog che
raccoglie, ordinatamente per tabs, decine e
decine di applicazioni. Possiamo ricordare
anche alcuni utili comandi aggiuntivi da ter¬
minale, come hinv per l’inventario hardware
o chkconfig per avviar e/fermar e individual¬
mente i daemons. Vale per la Indy tutto quel¬
lo che nel numero 27 è stato detto sul softwa¬
re della Indigo, a cui vi rimando.
A livello applicativo devo ricordare resi¬
stenza, sempre di serie, di moltissimo sof¬
tware inultimediale, convertitori di files,
generatori musicali, di visualizzatori 3D ecc.
(Figura_i3); ma anche di software di rete
e di teleconferencing, quando questa paro¬
la non esisteva neppure. Successivamente
è stato reso disponibile anche un emulatore
Windows 95, di utilità pratica forse limitata
ma comunque impressionante (anche perché
invece un emulatore Indy sotto Windows 95
non l’ho mai visto).
Sul fronte software bisogna tener conto, da
un lato, della disponibilità di software ap¬
plicativo di altissimo livello (un esempio per
tutti è Wavefront, che nel 1995 verrà acqui¬
stato direttamente dalla SGI e da cui nel 1998
nascerà Maya); dall’altro della disponibilità,
tipica del mondo Unix, di software gratuito.
La velocità della macchina, la qualità del sof-
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Pro v.a, Hardware.
L’analisi dei sistemi che hanno fatto l'informatica
turare, la facilità di interfacciamento hanno
infatti determinato, alla sua epoca, lo svi¬
luppo di una attivissima comunità di utenti
Silicon Graphics e di un clima culturale mol¬
to dinamico e collaborativo, con un attivo
scambio di idee e di software che, seppur
in chiave minore, continua ancora oggi. La
stessa Silicon Graphics incoraggiava questo
atteggiamento mediante un contest chiama¬
to IndyZone articolato in cinque settori: solo
player games, team games, single user to-
ols, multiple user tools, e best Indy software.
Ogni categoria prevedeva una macchina SGI
in premio al vincitore e la diffusione del sof¬
tware mediante i CD IndyZone (pare ne sia¬
no usciti cinque). Altri CD, contenenti demos
di programmi commerciali, Utilities e free-
ware, venivano diffusi dalla Silicon Graphics
tra la community degli utenti con il nome di
Hot Mix. Tutti questi sono ancora attivamen¬
te ricercati.
Naturalmente sarebbe inutile cercare As-
sassin Creed tra il software home-made di
vent’annifa, ma il livello è comunque decisa¬
mente brillante. Un esempio è visibile nell’ul¬
tima immagine (Figura_i4), che raffigura il
vincitore di IndyZone 1994 nella categoria
best solo player game: Blix, una specie di
PacMan mappato su una sfera, dove oltre a
guidare Vavatar dovete, man mano che
questo si muove, girare anche la sfera in
modo da non perderlo di vista.
Sembra semplice, vero? Provate a giocar¬
ci...
(=)
'-■•.•Vvì * ». '•
r /v t> y
SìUconGraphics
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
17
Lo sviluppo del linguaggio C
SECOND EDITOM
THE
PROGRAMMINO
LANGUAGE
BRIAN WKERNIGHAN
DENNIS M RTTCH1E
di Salvatore Macomer
Introduzione.
/ I linguaggio C è diffuso coinè forse
nessun altro linguaggio di program¬
mazione. Gli elementi principali del¬
la sua nascita sono noti: progettato presso
i Bell’s Laboratories da B. W. Kernighan e
Dennis M. Ritchie come evoluzione del lin¬
guaggio B, a sua volta derivato dal BCPL,
per lo sviluppo del sistema operativo Unix,
si impose ben presto sia per le sue caratteri¬
stiche che per la sua portabilità.
Questo articolo rivisita i passi essenzia¬
li della sua nascita e soprattutto della sua
evoluzione ed è basato in particolare su un
articolo sciitto da Ritchie in persona nel
2003 per la Lucent Technology, che nel frat¬
tempo ha rilevato i Bell’s Laboratories.
Uno sguardo di insieme.
Il C nasce negli anni 1969-1970 in paral¬
lelo all’evoluzione del sistema operativo
Unix. Il suo riconoscimento ufficiale si ebbe
nel 1977 e nel 1979 quando la portabilità di
Unix fu definitivamente dimostrata. Final¬
mente alla metà degli anni ’8o il linguaggio
venne standardizzato dal comitato ANSI
X3J11, quando ormai esistevano compila¬
tori C per quasi tutte le piattaforme, home
computer compresi.
Nel 2005 è stato eletto al vertice della clas¬
sifica dei linguaggi di programmazione più
diffusi al mondo, scettro che probabilmente
detiene ancora, mentre di fatto tutti o qua¬
si i linguaggi “moderni”, si basano sulle sue
idee, pur evolvendo l’ambiente di produzio¬
ne del software verso una concezione più
consona alle idee della programmazione ad
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Niente nasce dal nulla, tutto si evolve
oggetti.
Il testo “principe” che ne descrive le carat¬
teristiche è il famoso “libro bianco” scritto
dai due autori del linguaggio e che ha come
titolo “The C Programming Language”.
Viene chiamato “libro bianco” perché nella
prima edizione, cosa rimasta divariata nel¬
le successive, la copertina è semplicemente
bianca con una grande C azzurra che spicca
nel titolo.
Premesse storiche.
Alla fine degli anni ’6o i Bell Telephon
Laboratories decisero di uscire dalla join
venture che vedeva come altri attori il MIT
e la General Electric. Il consorzio aveva
come obiettivo la realizzazione di un si¬
stema operativo multitasking denomina¬
to Multics, progettato per il mainframe di
General Electric GE 645. La realizzazione
si stava però rivelando irta di ostacoli e la
prospettiva di un rilascio definitivo si allon¬
tanava sempre di più, oltre che presentarsi
sempre più costosa. I vertici dei Bell Labs
decisero di esplorare un’altra possibilità e
così venne incarica¬
to Ken Thomson di
lavorare sullo stesso
sistema per vedere
se era possibile una
sti'ada alternativa
più semplice e ov¬
viamente meno co¬
stosa da utilizzare
su hardware diverso
(il PDP in particola¬
re). Thomson inserì
nel nuovo progetto
le idee migliori che
erano state pensa¬
te per Multics: il file System ad albero, la
struttura di descrizione dei task, l’accesso
generalizzato ai device e la presenza di un
ambiente di comando a livello user (la shell)
potenzialmente inter operabile. Vennero ab¬
bandonate altre caratteristiche di Multics
la cui realizzazione era complicata, come
ad esempio l’accesso alla memoria e ai file
con le medesime funzionalità. Inoltre venne
scaldata la possibilità di scrivere parte del
codice con il PL/I scegliendo altri linguaggi
come il BCPL e l’assembler. Si perse però la
possibilità di disporre di un sorgente sti'ut-
turato e leggibile, cosa che PL/Ipermetteva
e questo ha influenzato nel primo periodo la
questione della portabilità del sistema ope¬
rativo in altre piattaforme, questione che
venne deciso di accantonare e riprendere
successivamente.
Il DEC PDP-7 nel 1968 era una macchina
con architettura a 18 bit con 8K di memo¬
ria e nessun programma ad alto livello. La
programmazione di Unix su questo sistema
doveva avvalersi dell’uso di un cross-as¬
sembler chiamato GEMAP sul GE-635 che
generava un nastro di carta eseguibile poi
su un PDP-7. Questo metodo venne usato
Ken Thomp¬
son (a sinis¬
tra) e Dennis
Ritchie (a
destra).
[Immagine
da Wikipe-
iia]
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
19
da Thompson per creare il primi nucleo del
sistema e una shell minimale con pochi co¬
mandi come cp, rm cat, etc... Messa a punto
questa parte lo sviluppo potè continuare in
autonomia sullo stesso PDP-7 senza coin¬
volgere la macchina della General Electric.
I predecessori.
Thompson cominciò sviluppando un ma¬
cro-assembler per il PDP-7, minimale e sen¬
za alcuna possibilità di utilizzare librerie,
linker, loader, etc... Il file eseguibile, frutto
della compilazione aveva un nome fisso:
“a.out” e questo spiega perché a tutt’oggi si
sia conservata questa convenzione sul nome
dell’output per i compilatori Unix.
Nel 1969 un certo Doug Mcllroy aveva
scritto un linguaggio ad alto livello per
Multics, il linguaggio TransMoGrifiers
(TMG), specificatamente adatto a scrivere
compilatori. Con esso si era sviluppato il
PL/I che girava sul GE 645. Da qui Thom¬
pson maturò l’idea che era necessaria una
cosa analoga anche per il PDP-7. Provò a
implementare una versione del FORTRAN,
che abbandonò quasi subito, per dedicarsi
al linguaggio che chiamò semplicemente B.
Il B è semplicemente mia versione del BCPL
“strizzata” per falla digerire ai soli 8K di
memoria della macchina Digital. Rispetto
al successore (il C), manca della tipizza¬
zione. La scelta del nome “B” non è certa:
alcuni affermano che sia una contrazione
di BCPL, alti! dicono derivi dal nome BON,
un’altro linguaggio scritto da Thompson
per il GE, a sua volta probabilmente deriva¬
to dal nome della moglie di Thompson che si
chiamava Bonnie; altri ancora non hanno
dubbi nell’affermare che BON sia una sorta
di formula magica della tradizione mormo¬
ne, comunità alla quale Thompson appar¬
teneva.
Tutti questi linguaggi, compreso il loro
successore C, appartengono alla classe dei
linguaggi cosi detti “procedurali”, i cui ca-
postipiti sono FORTRAN e ALGOL 60, ma
rispetto a questi ultimi sono molto più “ma¬
chine oriented”, cioè si avvicinano di più
alla struttura hardware dei moderni siste¬
mi e sono abbastanza semplici da permet¬
terne la portabilità su architetture diverse
con relativo poco sforzo.
Pur differendo abbastanza significativa¬
mente nelle sintassi, la loro macro struttura
è comune: una parte dichiarativa è seguita
daU’implementazione di funzioni (o proce¬
dure). Il BCPL permette la dichiarazione
ricorsiva delle procedure (una procedura
può contenerne altre), particolarità che è
stata rimossa nel B e C rendendo il compi¬
latore più semplice. L’aspetto della sintassi
è infondo minimale: le vere innovazioni ri¬
guardano le strutture dati interne ad ogni
singolo linguaggio.
Da notare che a volte certe sintassi vengo¬
no abbandonate ma si ripresentano dopo
una o due generazioni. Ad esempio il BCPL
accetta il commento a fine linea con i carat¬
teri //, il B vuole l’inclusione dei commenti
nelle coppie /* ... */, mentre la coppia // è
stata reintrodotta con il C++...
BCPL e B non hanno il concetto di tipo di
dato: ragionano con un unico tipo che viene
chiamato “cella” ed è rappresentata da una
sequenza fissa di bit. Sommare due variabi¬
li significa sommare il contenuto delle due
celle, Ogni cella può rappresentare l’indiriz¬
zo di un’altr'a cella e il BCPL usa la notazio¬
ne !p per indicare il valore della cella pun¬
tata dap, mentre il B introduce la notazione
20
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Niente nasce dal nulla, tutto si evolve
*p, che poi sarà la stessa adottata dal C.
Per l’accesso agli elementi di un array V, il
BCPL usa Vii, mentre il B la più famigliare
(almeno per noi) V[i].
Anche nella gestione delle stringhe il BCPL
e il B differiscono: nel BCPL il primo carat¬
tere deve contenere la lunghezza della strin¬
ga (da notare che questa convenzione sat'à
usata anche dal Pascal), mentre il B e i suoi
derivati non prevedono nulla di simile: deve
essere il contesto che stabilisce la tipologia
di dato.
Durante la scrittura del B, Thompson era
assillato dalla limitazione di memoria e fece
di tutto per rendere il linguaggio più com¬
patto possibile. Ad esempio a lui di deve
la reintroduzione, che prese dall’Algol 68,
dell’operatore di assegnazione con incre¬
mento += e l’invenzione nuova dell’opera¬
tore di auto-incremento ++ e di auto-decre¬
mento —, compresa l’idea che la posizione
di questo operatore prima o dopo il nome
della variabile dovesse corrispondere alla
sequenza temporale dell’operazione stes¬
sa (incremento prima o dopo l’assegna¬
zione). Alcune fonti dichiarano che l’idea
degli operatori di auto-incremento derivi
dal fatto che il PDP-11 aveva una funzione
nativa per queste operazioni e che Thom¬
pson semplicemente le abbia tradotte
nel suo B. Questo è impossibile: quando
Thompson scrisse il linguaggio B, il PDP-
11 non era ancora in commercio! E’ invece
probabile che Thompson si sia ispirato ad
una analoga funzionalità (ma non esatta¬
mente un auto-incremento), presente nel
PDP-7.
Il linguaggio B è pensato non per ge¬
nerare codice macchina direttamente
eseguibile, ma quello che viene chiamato
“threaded code” che sarebbe una sequenza
di indirizzi di routine (rum-time) che punta¬
no ad istruzioni elementari eseguiti da una
B-Machine che in pratica è una macchina
a stack. Thomson continuò nel suo lavoro
di sviluppo del B ma il PDP-7 cui dispone¬
va era una macchina troppo limitata e gli
8K celle di memoria riuscivano a malapena
a contenere l’interprete. Il risultato fu che
programmi scritti in B furono pochissimi,
se non il B stesso e l’idea di scrivere parte
del sistema operativo UNIX con questo lin¬
guaggio si rivelò una strada non percorri¬
bile. Stessa sorte per le altre idee di svilup¬
po di compilatori per i maggiori linguaggi
dell’epoca: FORTRAN, PL/IeAlgol 68. Una
delle prime routine messe a punto fu il pro¬
gramma “de”, che è un calcolatore a preci¬
sione variabile che fa parte ormai della do¬
tazione standard di Unix e dei suoi derivati.
La situazione si sbloccò nel 1979 quando ai
Fig. 2 -
Brian Kern-
ingham
[Immagine
da Old-com-
puters.com]
v_y
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
21
£ "
Fig- 3 -
Dennis M.
Ritchie.
[Immagine da
Old-comput-
ers.com ]
V_
Bell Lab arrivò il primo PDP-11 della Digi¬
tal. Per quanto non fosse ancora dotato di
memoria di massa, il nuovo sistema dispo¬
neva di 24K di memoria e fu ragionevol¬
mente facile per il team di Thomson, fare
un porting del codice B e sviluppare a par¬
tire da esso le prime routine di utilità per
lo Unix. Nel 1971 Steve Johnson scrisse la
prima versione del suo YACC (Yet Another
Compiler Compiler) usando l’assembler del
PDP-11 e molte routine nel frattempo svi¬
luppate in codice B.
I problemi del linguaggio B.
II PDP-11 introduceva una variazione im-
portante nell’architettura: la macchina era
byte-oriented rispetto alla precedente che
era word-oriented. Ne seguiva una perdi¬
ta di ottimizzazione volendo trasportare il
codice B senza interventi significativi sulla
struttura del run-time, senza contare che
queste modifiche annullavano per buona
parte tutto il lavoro di ottimizzazione in
termini di occupazione di memoria portate
avanti da Thompson.
Il secondo problema era che l’architettura
PDP non prevedeva il supporto nativo per
l’aritmetica floating-point. Se per il GE sot¬
to BCPL e il PDP-7 sotto B era stato possibile
intervenire con una simulazione ad-hoc, la
cosa era molto meno performante se adat¬
tata ad una macchina byte-oriented. Infatti
il vantaggio dell’architettura word-orien-
ted era quello di poter “accomodare” una
variabile in virgola mobile in una word,
cosa impossibile in un byte! Coinvolgere più
byte nella definizione di una variabile FP è
possibile ovviamente, ma le prestazioni di
calcolo scendono. L’ultimo problema era
per il B una progettazione della gestione
dei pointer che non poteva trasferirsi paro-
paro sull’architettura del PDP-11.
Nasce il linguaggio C.
Considerati i problemi descritti, nel 1971
Ritchie cominciò a riscrivere il B introdu¬
cendo la gestione a caratteri delle strin¬
ghe e la modifica delle altT'e strutture dati
per permettere la realizzazione di un vero
compilatore che generasse dal sorgente di-
rettamente codice macchina per il PDP-11 e
anche per il GE465. Questa nuova versione
22
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Niente nasce dal nulla, tutto si evolve
del B venne chiamata NB (che starebbe pei'
New B). Questo NewB durò pochissimo ma
fu un passaggio importante perché intro¬
dusse i tipi di dati int e char e gli array degli
stessi secondo la sintassi mutuata dal BCPL
e dal B:
int i, j;
char c, d;
int iarrayfio];
int ipointer[];
char carray[io];
char cpointer[];
Inoltre nella dichiarazione degli array di
puntatori la memoria non veniva allocata,
altra innovazione concettuale che poi il C
renderà sua con una modifica semantica di
convertire a puntatore l’indirizzo del primo
elemento di un array quando viene dichia¬
rato all’interno di una struttura dati.
Ad esempio la struttura di una directory di
Unix può essere rappresentata da un record
del tipo:
struct {
int inumber;
char name[i4];
};
Il compilatore trasformerà la dichiarazio¬
ne “char name[i4]” nel puntatore al primo
carattere del nome tutte le volte che il nome
dell’array viene incontrato nel codice.
Questa idea, messa alla prova con la ri¬
scrittura di codice sviluppato in B, si rivelò
promettente, incoraggiando lo sviluppo del
nuovo linguaggio, evoluzione dei due pre¬
cedenti, che venne chiamato C, come logica
conseguenza del suo predecessore principa¬
le.
Nel 1973 la definizione del C era completa
e si decise di dedicare l’estate di quell’anno
alla riscrittura del kernel dello UNIX. Lo
stesso esperimento lo aveva tentato Thom¬
pson l’anno prima ma mancava ancora la
definizione delle strutture nel nuovo lin¬
guaggio e la sfida era ti'oppo ardua.
Intanto ai Bell Lab erano arrivati nuovi
calcolatori: un Honeywell 635 e un IBM
360/370 sui quali si decise di realizzare la
portabilità del sistema operativo con com¬
pleto successo. Un alti'o sistema, leggermen¬
te più ostico per via della sua architettura,
fu l’Interdata 8/32. Il progetto fu portato a
termine ma servì anche per inserire alcune
minime ma essenziali modifiche alla defini¬
zione del linguaggio.
La sti'ada era tracciata! Dal 1973 al 1980
il linguaggio subì dei piccoli ritocchi nella
definizione dei tipi e delle strutture che di¬
vennero molto simili a quelle che oggi chia¬
miamo “classi”. In particolare furono inti'o-
dotti i tipi “unsigned” che resero possibile la
definizione delle operazioni su numeri privi
di segno distinguendo la loro aritmetica da
quella dei puntatori. Nel 1978 Kerninghan
scrisse la prima versione del famoso libro
“bianco” e la documentazione delle routine
di servizio al sistema operativo che fanno
parte ora del famoso “man”, il manuale on-
line di riferimento.
Una sfida che dovette vincere il linguaggio
fu anche quella di convincere i program¬
matori aU’utilizzo corretto degli statement
che per la loro somiglianza con quelli del
B e BCPL, tendevano a far scrivere codice
“obsoleto” o comunque senza quelle carat¬
teristiche innovative che il C permetteva
raggiungendo la pulizia del sorgente e l’ot¬
timizzazione del codice.
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
All’inizio degli anni ’8o il linguaggio C var¬
cò i confini accademici per rendersi disponi¬
bile sulle piattaforme home e personal e il
suo uso si diffuse rapidamente. Nel 1983 si
cominciò l’iter per la standardizzazione che
arrivò con l’inclusione delle specifiche ANSI
nel 1989 e ISO/IEC nel 1990. Il più signifi¬
cativo cambiamento apportato alla sintassi
del linguaggio dal comitato X3Jnfu la spe¬
cifica di come doveva essere dichiarata una
funzione esterna. Prima della standardiz¬
zazione la sintassi era ad esempio:
doublé sin();
Melitre dopo divenne:
doublé sin(double);
Ciò rese più rigido il controllo degli argo¬
menti per la funzione. Vennero aggiunti an¬
che le specifiche “const” e “volatile”.
I discendenti.
Dopo la standardizzazione del linguaggio
non fu più possibile chiamare “C” un fork
dello stesso con aggiunte varie, per cui i
tentativi meglio riusciti in questa direzio¬
ne dovettero dichiarare un nuovo nome e
quindi formalmente un linguaggio diverso
da quello cui si ispiravano. Ad esempio il
Cuncurrent C, l’Objective C, lo StarC (*C)
e ovviamente l’arcinoto C++, definito da
Sti'ousti'up nel 1986, dal quale poi sono
derivati ulteriori “figli”. Fra i discendenti
non dimentichiamo soluzioni più esoteriche
come Modula 3 (1991 ) e Eiffel (1988).
Fig. 4 -
Dennis M.
Ritchie (in
piedi) al
lavoro con
un program¬
matore sul
PDP-11.
V_
24
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Niente nasce dal nulla, tutto si evolve
Non sono mancate critiche alle idee e so¬
prattutto a come esse sono state messe in
pratica nella definizione del linguaggio. La
più evidente e giustificata è quella che at¬
tribuisce al C la colpa della scrittura di un
codice non proprio “leggibile”, al punto che
lo stesso compilatore abbisogna a volte di
un “aiutino” per risolvere i casi dubbi. Ad
esempio nella sequenza di statement:
int *fp();
int (*pf)();
che può essere tradotta in:
int*(*pfp)();
con perdita netta di leggibilità.
Dopo le critiche il perché di tanto (e per
buona parte insperato) successo?
Sicuramente alla diffusione del linguag¬
gio ha contribuito la diffusione del sistema
operativo Unix e derivati (Linux compreso).
Questa caratteristica da sola non spiega
tutto! Uri fattore sicuramente di successo è
la sua relativa compattezza e facilità nello
scrivere compilatori, dovuta alla vicinan¬
za dei suoi tipi di dato e funzionalità con le
sti'utture dei calcolatori moderni (una CPU
con registri e accesso diretto alla memoria).
La sua stabilità nel tempo è un alti'o fat¬
tore. Il linguaggio è sufficientemente com¬
pleto da non richiedere estensioni se non
proprietarie e limitate a certi computer. La
sua definizione può rimanere quindi quella
iniziale e questo contribuisce a dare l’idea
della stabilità del linguaggio. Nel tempo si
sono consolidate le librerie di supporto che
sono state raffinate passo dopo passo e han¬
no raggiunto ora, anche nel calcolo scienti¬
fico, una efficienza difficilmente superabile
anche da idiomi specializzati come il FOR¬
TRAN.
Conclusione.
La storia del C menziona una serie di nomi
che hanno contiibuito a gettare le basi della
sua definizione o ne hanno migliorato l’im-
plementazione. Essi sono:
Ken Thompson che nel 1969 ha creato il
linguaggio B;
Martin Richards che ha creato il BCPL;
Dennis Ritchie che ha trasformato il B nel
NB prima e nel C dopo (1973);
Alan Snyder, Steve Johnson e Michael
Lesk che nel periodo 1972-1977 hanno con¬
tribuito al miglioramento del linguaggio e
lo hanno usato in progetti di notevole por¬
tata;
Brian Kerninghan che ha scritto assieme a
Ritchie la piima versione del “libro bianco”,
vero standard del linguaggio;
I componenti del comitato X3J11 che han¬
no reso definitiva la versione dello standard
ancora oggi in uso: Jim Brodie, Tom Plum,
P.J. Plauger, Larry Rosler e Dave Prosser.
Reference
Dennis M. Ritchie “The Development ofC
Language” - Lucent Technologies 2003.
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
L ’indecidibilità
(parte 2)
di Salvatore Macomer
a scorsa puntata abbiamo intro¬
dotto il concetto di indecidibilità
dei sistemi formali come risultato
del teorema di Godei, ed esteso il discorso ai
sistemi che riguardano i linguaggi per cal¬
colatore dai quali si generano gli insiemi di
tutti i programmi.
Ci aspettiamo che l’insieme di tutti i pro¬
grammi scritti in un certo linguaggio, ma in
generale qualsiasi linguaggio abbastanza
generale va bene, contenga dei teoremi non
dimostrabili. Abbiamo anche nella scorsa
puntata indicata una via: il paradosso.
La domanda allora è: -”E’ possibile scri¬
vere un programma paradossale?” Sembra
improbabile ma invece è proprio così!
Sgombriamo subito il campo dall’amletico
dubbio del programmatore: i programmi
che scrivi per calcolare il pi-greco piutto¬
sto che il bilancio aziendale, non sono pa¬
radossali, sempre ammettendo che siano
formalmente e logicamente corretti. Essi
sono quei programmi “buoni” cui l’insieme
di tutti i programmi è pieno. Tuttavia una
categoria di programmatori è, diciamo, “a
rischio”e sono coloro che scrivono compila¬
tori. La scrittura di un compilatore per un
certo linguaggio coinvolge, se ci pensate,
un aspetto particolare: si tratta di scrivere
un programma che interpreta un altro pro¬
gramma e ne produce un output (il codice
oggetto compilato). Non ha importanza se
il sorgente è, diciamo in BASIC e il compi¬
latore è scritto in C: abbiamo detto nella
scorsa puntata che la sintassi non è impor¬
tante. Entrambi, cioè il codice sorgente e il
programma del compilatore (e anche il co¬
dice oggetto e codice macchina lo sono) ap¬
partengono allo stesso insieme di oggetti: i
programmi per computer.
Uno dei problemi della Computer Science
è il problema dell’arresto. Di cosa si tratta?
E’ possibile stabilire se dato un input un
certo programma si ferma dopo un numero
finito di passi oppure non si ferma mai?
Prendiamo ad esempio un classico ciclo
far:
FOR N:=i TO io
PRINT N
END
26
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Teoria e applicazione delle macchine calcolatrici
Va bene, questo si ferma. E’facile capirlo
“al volo”.
Quest’altì'o invece non lo fa:
FOR N:=i TO io
PRINT N
N := 1
END
Sono due programmi deducibili dal punto
di vista della proprietà di arrestarsi o meno.
Se il codice risulta più complesso è neces¬
sario farsi aiutare dalla macchina stessa
per avere la risposta. Perché non ci costru¬
iamo un esaminatore di arresto? Daremmo
in input a questo programma il nostro co¬
dice e questo esaminatore ci stampa il re¬
sponso che potrebbe essere: “il programma
si ferma dopo X passi”, oppure “Il program¬
ma non si ferma mai”.
Questo nostro esaminatore dovrebbe esse¬
re universale, cioè funzionare per qualsiasi
codice in input e per qualsiasi condizione di
partenza.
Prima di precipitarci a scrivere codice o
semplicemente a cercare il come si poti'ebbe
fare, ricordiamoci di Godei: un simile pro¬
gramma non si può scrivere.
Panico...
Come possiamo affermare una cosa del
genere?
Lo dimostreremo con una tecnica che vie¬
ne chiamata “diagonalizzazione”, che poi è
la stessa tecnica che ha permesso a George
Cantor di dimostrare che l’insieme dei nu¬
meri reali non è numerabile e quindi non
esaurisce lo spazio dei numeri.
La dimostrazione formale necessitereb¬
be di una serie di passaggi piuttosto noiosi
perché implica la dimosti'azione dell’equi¬
valenza fra un programma in un linguag¬
gio qualsiasi e il corrispondente program¬
ma scritto però su una macchina a registri.
Questa affermazione è nota in logica come
“Tesi di Church” ed afferma che:
“Fino a prova contraria si assume vera
l’affermazione che una finzione computabi¬
le sia R-computabile”
Il significato terra-terra è il seguente:
“data una funzione per la quale sia possibi¬
le calcolare il valore (ad esempio la radice
quadrata, il coseno, etc...), allora è possibile
calcolare il valore usando un sistema auto¬
matico codificato come programma di una
macchia a registri”.
Dal momento che i programmi per com¬
puter sono delle funzioni, la cosa calza a
pennello. Non dhnosti'eremo nulla di ciò:
il nostro è un articolo divulgativo, qualche
passaggio rigoroso si può saltare in favore
di una più facile comprensione dell’aspetto
generale.
Abbiamo anche capito, e se non vi è chiaro
lo ripetiamo qui definitivamente, che quan¬
do parliamo di “programma” non inten¬
diamo il mero codice sorgente scritto in un
qualche linguaggio, ma piuttosto una cop¬
pia di oggetti: P = (C, VJ, cioè il codice vero
e proprio e l’input del programma V o .
Tutte le possibili combinazioni di queste
coppie, cioè qualsiasi programma (ovvia¬
mente sintatticamente corretto), corredato
da uno dei suoi input, sono elementi di un
insieme che chiameremo D.
Quando diciamo che vogliamo dimostra¬
re l’indecibilità di D, significa che vogliamo
Covare almeno un suo elemento per il quale
non sia possibile affermare o confutare la
computabilità, cioè la determinazione di
una sua proprietà, ad esempio sapere se si
ferma oppure no.
All’interno dell’insieme D esistono dei sot¬
to-insiemi, che sono i modi con le quali pos¬
siamo raggruppare certi elementi in base a
particolari caratteristiche.
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
28
Un sotto-insieme di D è ad esempio l’insie¬
me dei programmi che si fermano: chiame¬
remo D-HALT questo sotto-insieme.
Analogamente esisterà un’altro sotto¬
insieme, disgiunto dal precedente: D-NO-
HALT e sarà composto da quei programmi
che non si fermano.
Se dimostriamo che un elemento di D-
HALT o di D-NOHALT è indecidibile, allora
abbiamo dimostrato Vindecidibilità dell’in¬
tero insieme D.
Questa è una tecnica comune in matemati¬
ca: si cerca di restringere il campo d’azione
e di confutare una certa affermazione su di
esso per deduri'e che l’intero insieme globa¬
le è viziato dalla stessa tara.
Nella riduzione a macchina a registri la
coppia P=(C, VJ diventa una sequenza or¬
dinata di istruzioni che fanno evolvere lo
stato della macchina stessa. Lo “stato” di
una macchina a registi'i è l’insieme dei va¬
lori di tutti i suoi registri in quel particolare
punto dell’elaborazione.
P avrà una rappresentazione, si chiama in
gergo “gòdeliano” del programma P con in¬
put V Q , del tipo:
o - A , S
i - A°, S
o
2 - A , S
2 * 2
n - A , S
ir n
intendendo con questa notazione che ad
ogni passo “i” del programma verrà ese¬
guita l’istruzione A. e conseguentemente lo
stato della macchina diverrà S r
Ovviamente qualsiasi programma che stia
in D-HALT si ferma per definizione, quindi
avrà un gòdeliano di questo genere:
L’ultima istruzione non può essere che
quella di stop dell’esecuzione. Anche l’ipo¬
tetico programma in grado di dirci se un
altro programma qualsiasi si fermerà dopo
un certo numero di passi, si deve per forza
fermare.
Vi ricordo che stiamo ipotizzando che que¬
sto programma esista e andremo a dimo¬
strare che non può esistere.
Questo ipotetico P (I prenderà come input
il programma P con il suo stato S e dopo k
step si fermerà fornendo la sua risposta in
uno dei registri della macchina, diciamo R o
che conterrà il valore nullo se il program¬
ma si felina, altrimenti R o avrà un valore
diverso da nullo e significa che il program¬
ma P in esame non si ferma mai (è una con¬
venzione ovviamente).
Il gòdeliano del nostro P o sarà:
P(P):
o - A , S
. O o
1 - A , S
1 1
2 - A , S
2 J 2
k-i - A(k-i), S (R )
k - HALT
Allo step k-i il registro R o ci dice qual è il
risultato del calcolo in base, come abbiamo
stabilito, al valore del registro R o .
Abbiamo quindi la nostra “macchinetta
universale”.
Bene, partendo da questo costruiamo un
altro programma P* così fatto:
P*(P 0 (P)) :
°-A,S 0
ì - A , S
2 - A 1 , S 1
2 2
k-i - A(k-i), S, (R)
k - IF R = nuli THEN k else k+1
k + ì - ÈALT
o - A , S
A 0 C°
ì - A , S
2 - A’, S*
n - HALT, S
Sono esattamente le stesse istruzioni del
programma P Q fino allo step k-i, poi lo step
k è stato cambiato e si è aggiunto lo step k
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Teoria e applicazione delle macchine calcolatrici
+1.
P* non appartiene necessariamente a D-
HALT, vi apparterrà solo se il programma
che va ad esaminare è in D-HALT.
Quindi diciamo che P* si ferma se il suo
input è un programma in D-HALT e non si
ferma per niente se il programma è fuori da
questo sotto-insieme.
Tutti d’accordo?
Bene, adesso applichiamo P* al program¬
ma P o , che sappiamo essere in D-HALT:
Arrivati allo step k-i avremo R o = nuli e
quindi dovremmo dedurre che P o si ferma,
ma il passo successivo manda P* in loop e
pertanto P * non si ferma mai per P Q .
Siamo arrivati alla contraddizione diago¬
nale: “abbiamo costi'uito un programma P o
che appartiene a D-HALT ma non è possi¬
bile dimosti'arlo”.
L’insieme D è indecidibile.
Attenzione: abbiamo volutamente sempli¬
ficato la dimostrazione lasciandola su un
piano più inflativo che rigoroso; non me ne
vogliano i logici matematici “accademici”.
L’obiezione più immediata potrebbe essere
fatta al nostro ragionamento affermando
che le istruzioni A Q , A i e così via del pro¬
gramma P o , potrebbero essere diverse dalle
corrispondenti di P*. In realtà il processo di
gòdelizzazione assicura che sono le stesse.
Mi auguro che qualcuno, magari non pre¬
tendo in tantissimi, sia riuscito a seguirmi
in questo ragionamento che è difficile, me
ne rendo conto, ma che è una delle basi della
moderna scienza informatica.
Concludo con una citazione che un profes¬
sore di informatica era uso declinare ai sui
studenti:
“Fatti non foste solo per scrivere
codice, ma per tradurre la vostra
intelligenza nel linguaggio della
macchina”.
(=)
Una foto di Kurt Godei verso la fine della
sua vita (morì suicida nel 1978 all’età di yi
anni). E’ considerato il più grande logico
moderno e secondo solo ad Aristotele.
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Automatik (27)
Nosferatu
Di Lorenzo Paolini
Dove vi faccio conoscere Patrizio, da noi
soprannominato Nosferatn il vampiro.
unque accadde che Romano, il ti¬
tolare della Automatik Noleggio
Giochi, decidesse di affiancare a
Daniele, lo storico operaio tuttofare della
ditta, un ragazzo che potesse presto impara¬
re e quindi raddoppiare le capacità logisti¬
che dell’azienda.
In pratica i lavori da fare erano semplici e
ripetitivi: si trattava di scorrazzare in lun¬
go e largo nel territorio di competenza del¬
la ditta (un raggio più o meno di cinquanta
chilometri), per sostituire i giochi nei bar,
ritirare gli incassi e fare al limite delle ri¬
parazioni o delle manutenzioni ordinarie.
Quali erano queste “manutenzioni ordina¬
rie”? Più che altro pulire il vetro che copri¬
va lo schermo, che con il tempo si offuscava
per il deposito interno di polvere elettrizzata
dallo schermo CRT, cambiare i gommini ai
flipper, contT'ollare che le gettoniere funzio¬
nassero bene, etc... Come si vede niente che
non si potesse imparare nel giro di tre mesi
o poco più.
Con questa idea Romano assunse, Dio solo
sa perché, un certo Patrizio: un ragazzo più
o meno di vent’anni, alto e dinoccolato con
aria abbastanza assente e taciturno per na¬
tura. La carnagione chiarissima di questo ti¬
zio, i suoi capelli neri portati lisci e lunghi fin
quasi alle spalle, unita alla sua indole solita¬
ria e ad un modo di vestire che si potrebbe
definire “emo”, ma all’epoca non c’era questo
movimento dark, gli guadagnò il sopranno¬
me di “Nosferatu, il vampiro” (per gli amici
“il vamp”).
Io e Daniele eravamo spietati in questo
senso e quando arrivò in ditta Patrizio e
fu ben presto chiaro che non se ne sarebbe
cavato nulla di eccezionale, le celie sul suo
soprannome e sulla sua indole non si conta¬
rono più!
Peraltro lui non dimostrò mai di aversene
a male anche quando talvolta ci si spazien¬
tiva della sua indolenza e lo si incitava deci¬
samente.
30
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
i computer nella letteratura
Pattizio cominciò seguendo Daniele nei
suoi giri giornalieri. Il piano era di renderlo
autonomo per le cose più semplici il più pre¬
sto possibile, poi avrebbe dovuto imparare
qualche facile riparazione dal sottoscritto e
così via.
Bene, non si uscì mai dalla fase 1.
Il perché non ce lo spiegammo all’epoca,
cioè Daniele e il sottoscritto, perché Roma¬
no, che doveva sapente qualcosa di più, ta¬
gliava corto ad ogni accenno da parte no¬
stra. Cosa diavolo ci fosse fra i due nessuno
lo seppe mai. Sospettammo che fosse figlio
di un amico di famiglia tna i tentativi che
portò avanti Daniele per farlo sbottonare
e saperne qualche cosa della sua vita, noti
sortirono alcun effetto. Il sottoscritto poi
non era appunto considerato da Nosfera-
tu, proprio come non esistessi. Arrivava la
mattina in laboratorio, rispondeva al saluto
solo se qualcuno lo salutava per primo e poi
si metteva con calma a proseguire con quello
che stava facendo la sera prima, cioè pulire
un gioco o il vetro di un flipper o sostituire i
gommini ofar girare fino allo sfinimento il
programma di diagnostica dei flipper Bal-
ly. Questa era proprio una cosa insoffribile
perché il nostro amico non si lùnitava a far¬
lo eseguire una/due volte ma lo rilanciava
all’infinito anche quando era tutto a posto e
bisognava che qualcuno ci andasse a forza
a interromperlo quel maledettoprogramina
che faceva saltare le bobine in sequenza con
un fracasso alla lunga insopportabile!
La conversazione del “vamp” era limita¬
ta a pochissime fi'asi di servizio, quasi mai
iniziava una conversazione e men che meno
partecipava. Uno di quei tipi che quando
ci sono pesano sull’ambiente come dei ma¬
cigni: non sai cosa pensano, non sai cosa a
loro interessi, non sai se fai bene a parlare
con loro... insomma una sofferenza relazio¬
nale vera e propria.
Da un certo punto di vista io stavo meglio
di Daniele che se lo doveva sopportare tut¬
to santo il giorno. Se ne lamentò più volte
con il titolare e una mattina, evidentemente
aveva superato il limite della sua pazienza,
saltò sul furgone e lo lasciò lì in mezzo al
piazzale come una statua. Peraltro Patrizio
non diede segno di esserne rimasto colpito;
probabilmente pensava che Daniele si fosse
dimenticato di lui o che avesse avuto qual¬
che cosa di urgente da fare e che sarebbe
ritornato presto. Romano si arrabbio con
Daniele e lo riprese ma ebbe come ritorno
una reazione che non si aspettava da quel
suo mite collaboratore e quindi, come spesso
gli capitava quando non aveva argomenti
da contrapporre in una disputa, girò i tac¬
chi e se ne andò senza ripresentarsi per tutto
il giorno.
Parlandone anni dopo con una ragazza
che avevo conosciuto, mi spiegò che secondo
i suoi studi di psicologia, Patrizio era auti¬
stico, un disordine mentale che è molto più
diffuso di quanto si pensi e che da non pochi
armi era stato inquadrato con precisione, ri¬
sultando fino ad allora catalogato in manie¬
ra generica come un ritardo mentale.
Penso che questa dottoressa (o futura tale)
avesse proprio ragione: stetti più attento a
certi segnali nel prossimo e, veri o presunti,
ne individuai un sacco di persone con pro¬
blemi simili!
Mi pento un po’ di aver considerato Patri¬
zio un “demente” quando lavorava alla Au¬
tomatiìk. Certamente con migliore conoscen¬
za e una adeguata informazione avremmo
potuto aiutarlo e certo anche lui ci avrebbe
insegnato qualcosa. Invece andò in tutt’al-
ti'o modo e dopo qualche tempo Patrizio non
si presentò più, peraltro senza aver saluta¬
to nessuno. Romano ci spiegò in due parole
che “era andato via”. Di più non ci fu dato
di sapere e Daniele e il sottoscritto tirarono
un sospiro di sollievo riprendendo la nostra
convivenza goliardica fatta di giornate pas¬
sate assieme a scorrazzare giochi su e giù e
a inventare scuse per il titolare alle nostre
marachelle quotidiane.
Ma questa è un’alti'a storia...
(=)
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Due nomi quasi dimenticati
di Lorenzo/2
a mia esperienza come video
giocatore non nasce con gli
home computer come ad esem¬
pio il C64 o lo Spectrum o le va¬
rie console Atari, Nintendo, etc... Pur essen¬
do un informatico “diprima generazione”, in
realtà praticavo le macchine di calcolo della
facoltà e gli Apple (a cominciare dal //e).
Fu solo con l’avvento del PC IBM e in par¬
ticolare con la generazione dei 386 che la
passione videoludica mi coinvolse. Era un
periodo quello della fine del 1980 che si vive¬
va una stagione eccitante, forse più di quella
che l’aveva preceduta, cioè quella degli home
fino all’Amiga. Senza nulla togliere ai ineriti
degli anni “ruggenti” dell’informatica-qua-
si-elettronica, bisogna riconoscere che fu
l’avvento del PC clone a costo abboi'dabile
a dare una svolta decisiva all’affermazione
dell’informatica come fenomeno di massa.
In particolare la trasmigrazione di utenti
skillati dal Peek-Poke sugli home verso il PC
dotato di strumenti software di adeguato li¬
vello, ha interessato una intera generazione
di programmatori/smanettoni, quelli che si
definiscono in una parola “hacker”.
La disponibilità di titoli ludici per PC esplo¬
se di conseguenza e come spesso capita, creò
occasioni di aggregazione. Ci si scambiava¬
no giochi con i colleghi/amici, si frequenta¬
vano i club che, convertitosi al PC partendo
dalle specializzazioni precedenti (Sinclair
Club, Commodore Club, Amiga Club,....),
vissero una stagione brillante alla luce del¬
la nuova mania del videogioco. Non c’era
negozio di elettronica/informatica che non
fosse fornitissimo di scatole coloratissime (e
praticamente vuote, visto che contenevano
quattro floppy e un manualetto di venti pa¬
gine...), scrigno delle più esaltanti avventure
notturne in compagnia del fido calcolatore
domestico.
I copiatori andavano a mille! Praticamente
era la prima cosa che veniva fatta quando
si riceveva in prestito il gioco da un amico o
dal club: si copiavano i supporti e ci si bar¬
camenava a scopiazzare il manuale, spesso
chiave indispensabile per superare le prote¬
zioni anti-copia.
Mi sono sempre chiesto due cose in propo-
32
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
La macchina del tempo
sito: quale era la convenienza nel produiTe
programmi di copia, quando i primi ad es¬
sere copiati erano proprio loro stessi? E se¬
conda domanda: veramente chi vendeva il
gioco si illudeva che la protezione costituita
dalla necessità di possedere il manuale po¬
teva essere un deterrente alla pirateria?
Ricordo soluzioni del tutto fantasiose a
questo proposito, con dime grafiche da so¬
vrappone a certe pagine, regoli circolari
con chiavi di accesso da ricavare ruotando
il cursore,... Invece di essere un deterrente
secondo me stimolavano l’ingegno di quel¬
le persone che non mancavano mai di in¬
ventarsi una qualche soluzione, fantasiosa
come la protezione o magari anche ridicol¬
mente semplice: un affronto alle menti dei
progettisti!
Non ho mai avuto risposte ai miei dubbi
amletici.
Tornando al “PC per giocare”, assieme ai
giochi fiorirono le periferiche e non parlo
solo dei joystick di varia foggia in grado di
farci sentire al volante di una monoposto o
davanti al cocktpit di un caccia, ma delle
soluzioni che ovviavano alle mancanza pro¬
gettuali più eclatanti del sistema di IBM: la
grafica e il suono.
In fondo il possessore di PC era abituato
ad aprire il cabinet per infilarci una scheda;
non era come il possessore di Amiga che si
trovava equipaggiato di tutto quello che po¬
teva servire (o quasi)!
Ci sono quindi dei nomi che oggi sono sco¬
nosciuti ma che una ventina di anni fa erano
linguaggio corrente. Ne vogliamo risentire
due?
Creative Sound Blaster
La sezione audio era inesistente nel pro¬
getto del PC IBM. In fondo, si pensava, in
ufficio al di là di qualche bip, di quale suo¬
no c’è bisogno? Però se il PC diventa una
console da gioco (e che console, vista la sua
crescente potenza elaborativa!) non è possi¬
bile prescindere da un audio a livello degli
ultimi home dell’epoca: Amiga, Atari e per¬
fino Apple con il suo GS potevano vantare
armi luce di distanza dal minuscolo speaker
interno del PC. Infondo costruire una sche¬
da sonora non era poi così difficile: il chip
Yamaha AYxx era disponibile da tempo. Il
difficile era diventare uno standard di ri¬
ferimento. Ci riuscì una piccola ditta nel
1989, la Creative, con il suo modello Sound
Blaster. La Creative peraltro esiste ancora
e produce accessori audio professionali o
semi-professionali.
Per far “digerire” la scheda al PC bisogna¬
va istruire il sistema operativo (il DOS) con
una linea di comando all’interno del file AU¬
TOEXEC.BAT. Cominciarono così ad appa¬
rire scritte come:
SET BLASTER=A 220 I5 Di
Dove A220 è l’indirizzo della scheda (set-
tabile via dip-switch sulla scheda stessa); I5
è il numero di Interrupt; Di significa primo
canale DMA.
Come si vede, anche il giocatore meno tec¬
nicamente preparato una o due cosucce sul
lato tecnico del PC le doveva sapere...
Ovviamente dal primo modello se ne evol-
verono altri seguendo la fame di prestazioni
(si sa che l’appetito vien mangiando...) de¬
gli utilizzatori, le esigenze sonore dei giochi
e infine l’evoluzione della tecnologia del PC
che come minimo cambiava interfaccia del
BUS ad ogni generazione.
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
33
Utilizzando un chip Yamaha YM3812, la SB
era in grado di operare su 11 canali audio ed
era anche una periferica di I/O per la con¬
versione digitale-analogica nelle due direzio¬
ni. Sì, la SB già all’epoca poteva fungere da
scheda di acquisizione audio e campionare
un segnale a 12 KHz (23 KHz erano le presta¬
zioni dell’audio in uscita).
Nel 1989 costava 129$ (in Italia probabil¬
mente eravamo sulle 250.000 Lire o poco
meno). Già l’anno successivo il prezzo era sce¬
so e i modelli si diversificavano per seguire le
esigenze dei professionisti con prestazioni di
tutto rispetto sull’interfaccia MIDI, e dei gio¬
chi per PC che praticamente da subito hanno
supportato la scheda e il suo standard di in¬
terfacciamento. Nei giochi dei primi anni ’90
era richiesta spesso la configurazione a menù
della scheda audio e firn le scelte possibili non
mancava mai la voce Sound Blaster.
Un ulteriore salto epocale fu l’introduzione
del modello “prò” che aveva a bordo l’inter¬
faccia per cd-rom. Anche per questa periferi¬
ca era necessario smanettare con ifile di con¬
figurazione e anche per il cd-rom la Creative
impose un suo standard per l’interfaccia, an¬
che se ormai il successo delle soluzioni stan¬
dard-di-fatto stavano mostrando i loro limiti
e ben presto vennero tutte assorbite nelle ver¬
sioni aggiornate dei sistemi operativi.
3dfx
Sul fronte della grafica il PC non poteva ri¬
valeggiare con macchine che nascevano ben
equipaggiate, come gli Amiga ad esempio.
Grazie alla sua architettura aperta però il PC
poteva essere dotato di schede specializzate
con qualsivoglia livello di prestazioni, basta¬
va avere i soldi per comprarsele ‘ste schede
grafiche da paura!
Il problema però, dal punto di vista dei pro¬
duttori di videogiochi era irrisolto perché
mancava uno standard. Infatti se un pro¬
duttore di programmi grafici professionali
poteva permettersi di progettare e commer¬
cializzare una scheda grafica proprietaria
funzionante solo con il proprio software, la
stessa cosa non potevano farla i produttori
di videogiochi.
Per la verità lo standardSuper-VGA (SVGA)
non era malaccio: 1024x768 con profondità
di 8-bit per pixel, ma le esigenze si stavano
evolvendo con la necessità di avere un pro¬
cessore grafico per calcolare poligoni, textu-
re e quant’altro. Si stava andando nella sta¬
gione degli f/s (frame al secondo): un gioco
era bello se i movimenti erano fluidi, quasi
come un film!
In fondo la SVGA era uno standai'd abba¬
stanza vecchio: definito poco prima del 1990
e mostrava chiari segni di vecchiaia alla
metà degli anni fio.
Nacque quindi uno spiraglio di mercato
dove si infilò prontamente
una azienda che si chiamava
3dfs Interactive e che offriva
in pratica un co-processore
grafico.
Il funzionamento era ab¬
bastanza striano perché per
rispettare gli standard del
PC il segnale video che usci¬
va dalla VGA usata dai pro¬
grammi “normali”, veniva
34
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
La macchina del tempo
deviato nella 3dfx e da questa al monitor.
La scheda, il cui nome di pi'odotto era Voo-
do, commercializzata dal 1996, diventava
operativa con il caricamento in memoria di
una libreria grafica chiamata GLIDE alle cui
funzioni potevano appoggiarsi i programmi.
Il primo gioco che ne fece uso fu Quake, poi
DukeNukem, poi Doom al quale seguirono
altri titoli dello stesso genere (sparatutto in
pròna persona) e via via gli altri.
Anche le schede 3dfx sono state interessate
ad una evoluzione continua fino ad arriva¬
re alla tecnologia di interlacciamento: due
schede che funzionano in pai'allelo occupan¬
dosi ognuna di una riga di scansione. Forse
lo sbaglio della 3dfs Interactive fu quello di
pensare che il modello tecnologico da loro de¬
finito potesse continuare indefinitivamente.
Alla fine, dopo il forinole fallimento, la 3dfx
Interactive fu acquistata dalla Nvidia.
3dfx ha senza dubbio contribuito a cam¬
biare per sempre il settore del gioco su PC.
Cominciò con le schede grafiche Voodoo, nel
1996. Queste schede si potevano trovare su
molti computer da gioco all’epoca, quasi tut¬
ti. Era un periodo in cui le sale giochi ave¬
vano ancora un relativo successo, prima che
arrivassero le console.
Quando i prezzi della RAM si abbassai'o-
no, verso la fine dell’anno, 3dfx creò le sue
schede Voodoo PCI, ormai un classico. Nello
stesso tempo id Software pubblicava Quake,
che introduceva un motore grafico rivoluzio¬
nario, per gli standard del momento, perché
sfruttava i poligoni vettoriali invece dei pixel
come base. Il nuovo Quake (GLQuake) sfrut¬
tava i vantaggi dei driver OpenGl di 3dfx, e
divenne l’avanguardia di una rivoluzione che
avrebbe contagiato il videogioco domestico.
Da quel giorno in poi avremmo visto miglio¬
ramenti continui nella qualità delle immagi¬
ni, con superfici uniformi, texture strabilianti
e velocità da record. Una tendenza che conti¬
nua ancora oggi.
Nel 1998 poi 3dfx fece un ulteriore passo
evolutivo con lo Scan-Line Interleave (SLI),
che permetteva d’installare due Voodoo-2
sullo stesso computer, e sommarne la poten¬
za (vi ricorda qualcosa?). Negli anni seguenti
però l’azienda non trovò la strategia giusta
per imporsi come prodotto nativo nel PC, così
nel 2000 finì in bancarotta e venne venduta
alla Nvidia.
(=)
[Reference: immagini tratte da wikipedia]
Super QL
ite la verità: un Sinclair QL
così non l’avete mai visto.
E infatti non potete esservi
imbattuti in esso, sempli¬
cemente perché questa macchina non esi¬
ste! Si tratta infatti di quello che oggi viene
chiamato “concept disign” e che una volta si
chiamava semplicemente “progetto”.
Torniamo indietro e andiamo al 1985 in
Inghilterra e precisamente al quartier gene¬
rale della Sinclair Research Limited dove si
lavorava ad una excalation dell’informatica
personale, così come Olive Sinclair, fondato¬
re di quella che fino a quel momento era una
azienda di successo, concepiva: macchina
innovativa, potente ma con rapporto prez¬
zo/prestazioni particolarmente favorevole.
Già dal 1983 era partito il progetto ZX83
che doveva produrre il successore dello
Spectrum (il cui nome in codice era ZX82). Il
progetto si era però arenato perché la sfida
andava oltre la semplice evoluzione dei pro¬
dotti finora commercializzati dall’azienda.
Le linee guida potevano essere (ci sostituia¬
mo nel cervello di Olive): processore potente,
di Sonicher
molta memoria, sistema operativo avanza¬
to, software di produttività potente e facile
da usare, memoria di massa capiente e poco
costosa.
Le CPU c’erano, ad esempio il Motorola
68000, un core a 32 bit potenzialmente ca¬
pace di lasciare al palo gli ormai obsoleti
microprocessori a 8 bit. I chip di memoria
venivano prodotti in quantità crescente e i
prezzi stavano scendendo. Sisterna operati¬
vo e software potevano essere sviluppati con
un certo sforzo, senza peraltro inventarsi
nulla: video gestito a finestre, multitasking,
un BASIC evoluto,...
Mancava la memoria di massa, nel senso
che i floppy potevano essere adatti ma co¬
stavano ancora troppo e il drive era ingom¬
brante e pesante anche nella versione da
2,5”. Sir Clive Sinclair voleva una macchina
“portatile”, perché riteneva che la sua azien¬
da dovesse concentrarsi su un fattore di for¬
ma agile. Il PC IBM era uri macigno, lascia¬
tecelo dire, buono per gli uffici contabili, lui
aveva in mente ben altro.
La caccia era aperta, anche se si decise ad
36
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
La macchina del tempo
un certo punto di far uscire un sistema “con
quello che era disponibile” e cioè il Quantum
Leap con il Motorola 68001 (core a 32 bit
ma bus a 8), il minimo di memoria necessa¬
ria ((128 Kb) per un sistema operativo an¬
cora acerbo e un Super-BASIC promettente
ma non ancora consolidato al 100% e infine
ifamigerati micro drive come Storage.
Sono note le vicende legate agli annunci
prematuri, alla raccolta dei pre-ordini e ai
ritardi nelle consegne. Comunque il QL era
una bella macchina per l’epoca!
Nella ricerca di una periferica di massa de¬
gna di questo nome, gli ingegneri della Sin¬
clair Research si imbatterono in una nuova
tecnologia che prometteva parecchio: la
Wafer Scale Integration. Ne acquisirono i
brevetti e cercarono, nella tradizione della
ditta, di tirarne fuori il meglio con il minimo
di spesa.
Ci prendiamo un po’ di tempo per descri¬
vere in breve questa tecnologia, rimandano
per chi volesse approfondire alla copiosa
documentazione esistente in rete, a comin¬
ciare dalla Wikipedia.
L’idea originale dei wafer da usare come
super-chip, pare sia
del britannico Ivor
Catt nel 1975, al quale
si fanno risalire i pri¬
mi brevetti. Costrui¬
re il super-chip è una
cosa, poterlo utilizza¬
re è un’altra! E infatti
si sono susseguiti mol¬
tissimi brevetti che
intendono risolvere il
problema principale
di questo prodotto:
l’individuazione auto¬
matica dei componen¬
ti difettosi e il loro iso¬
lamento dalla griglia
di memorizzazione.
Tutti sanno che i chip elettronici sono pro¬
dotti su un substrato di silicio attraverso
un processo industriale che assomiglia alla
stampa 3D: sfrati successivi vengono “inci¬
si” sulla superficie per ottenere transistor e
collegamenti. Il wafer, cioè lo sfrato sottile
che costituisce la base del processo ha for¬
ma circolare di diametro variabile (sono tre
le misure standai'd industriali) e sono fette
tagliate da un cilindro di silicio mono-cri¬
stallino ottenuto da un processo di crescita
di un cristallo alimentata dal gas di-metil-
silano. Il processo fisico e industriale è mol¬
to complesso seppure interessante, ma esula
dallo scopo di questo articolo per cui non lo
approfondiamo. Sta di fatto comunque che
queste fette di silicio vengano “stampate”
con chip di varie dimensioni per ottimizzare
l’utilizzo della superfìcie e poi tagliati con un
laser ed assemblati nei contenitori che costi-
tuiscono i chip veri e propri da utilizzare nei
circuiti elettronici.
Tutta la catena del processo produce un
certo numero di scarti: la superficie del wa¬
fer non è perfetta al 100% e se un chip cade
su un “buco”, per quanto microscopico, tutto
Il progetto ZX83
realmente com¬
mercializzato.
E’ il QL che cono¬
sciamo...
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
37
Dalla sabbia il
computer.
In realtà non
si parte dalla
sabbia, ma è lo
stesso.
il chip è da buttare. Il processo di assemblag¬
gio è anch’esso foriero di qualche errore ed è
la parte industrialmente più costosa.
E’ logico quindi che ci sia chiesto se fosse
possibile utilizzare Finterò wafer come com¬
ponente elettronico invece di ricavarne chip
singoli. La cosa è interessante per la memo¬
ria RAM: i chip sono minuscoli, tutti ugua¬
li e ne servono sempre di più in un compu¬
ter. Se fosse possibile inserire Finterò wafer
come memoria di un elaboratore il costo per
bit scenderebbe di molto. Il wafer di silicio
è occupato da un “chippone” di memoria e i
problemi sono quelli di indirizzare una così
grande quantità di celle ma soprattutto quel¬
lo di tollerare una certa percentuale di chip
guasti. Su questo problema lavorarono molti
ricercatori, superando sia teoricamente che
industrialmente le difficoltà, almeno sulla
carta.
Ovviamente i tempi di accesso non sono
quelli di un singolo chip individualmente
indicizzato, ma come memoria di massa è
molto più performante di un floppy. E’ vero
che c’è il problema dell’alimentazione ma con
una batteria tampone e uno store alimentato,
in qualche modo si affi'onta.
I ricercatori della Sinclair Research si im¬
battono in questa tecnologia già nel corso del
progetto ZX83 ma il capo, sir Olive Sinclair,
preme per uscire e devono accontentarsi dei
famigerati micro drive in modo da lanciare
nel 1984 il QL. Sappiamo che l’annuncio gode
della fama dei uno dei più grandi vaporware
della storia informatica: in pratica la Sin¬
clair annuncia un prodotto che non esiste
industrialmente e da questo seguiranno le
delusioni dei clienti, le proteste, i bug delle
prime release.
Tutti gli storici dell’industria sono concordi
nell’affermare che la Sinclair, con l’affare QL,
pose le basi per la propria fine prematura.
A difesa di Sinclair va comunque detto che
praticamente nessuno, se non la Apple, capì
che Fera del personal-gioco era finita.
Una soluzione
alternativa, più in
linea con l’espan¬
sione di memoria
RAM già disponi¬
bile per il QL.
Il Personal Computer QL era
un prodotto all’avanguardia,
seppure con i problemi citati e
avrebbe potuto fare da apripista
per i successivi progetti di Sin-
clair. L’adozione del Wafer pote¬
va far fare quel salto di qualità
che Olive auspicava, cioè lascia¬
re al palo la concorrenza. Men¬
tre la messa a putito proseguiva
dal punto di vista elettronico, la
Sinclair incaricò un designer per
il progetto della nuova macchi¬
na: Rick Dickinson che aveva già
collaborato con lo staff della Sin-
38
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Co.aa.e-e.r.a.v.a.m.o.
La macchina del tempo
clair in precedenti occasioni.
Il risultato del lavoro del designer appare
(sulla carta) quanto mai accattivante con
l’evidenziazione della periferica Wafer e l’in¬
serto di colore rosso alla base della tastiera.
Accanto alla base-tastiera Rick progetto uri
dock, alimentato a parte che avrebbe costitu¬
ito il “magazzino”della memoria. Questo ele¬
mento viene indicato nel lavoro di Dickinson
come “mini-stack” che doveva costituire una
sorta di hard-disk realizzato con una serie di
wafer in un contenitore autonomo.
Il QL+ non riuscì ad arrivare alla fase di re¬
alizzazione industriale, così come rimase sul¬
la carta il suo successore che avrebbe dovuto
chiamarsi Super QL, dal design avveniristico
con il suo arrangiamento verticale e la rottu¬
ra totale con gli schemi precedenti(vedi foto
in questa pagina).
Tutto rimase sulla carta perché nel 1985 la
Sinclair vendette adAmstrad e ogni progetto
venne abbandonato. Al nuovo proprietario
del marchio non interessava sperimentare
ma solo stare sul mercato già consolidato
dell’home svecchiando i prodotti esistenti per
quanto più tempo fosse possibile.
Conclusione.
Chissà come sarebbe stato con il QL+ e an¬
cora di più con il Super QL! Certo non sareb¬
bero stati certo loro a fermare l’inarrestabi¬
le diffusione del PC IBM: se non c’è riuscito
l’Amiga... Ma ora avremmo due macchine in
più da collezionare e studiare.
Peccato!
Reference.
“Delete: A Design History of Computer Va-
pourware” by Paul AtkinsoTi
ISBN-13: 978-0857853479
ISBN-10: 0857853473
Foto da Rick Dickinson: https://www.
flickr.com/photos/ 95740 86 @No 2/
sets/72157600854938578/
Aubusson, R.C.; Catt, Ivor, “Wafer-scale
integration-a fault-tolerant procedure,” in
Solid-State Circuits, IEEE Journal of, vol.13,
no.3, pp, 339 - 344 , dune 1978
doi: 10.1109/JSSC.1978.1051050
Il “Super QL”, il
sogno finale di
Sir dive Sinclair,
mai realizzato.
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
39
Il mio Z8o
di Gizmo
Premessa
Costruire oggi un microcomputer ispiran¬
dosi ai progetti dei primi anni ‘80, con tutta
la documentazione reperibile e con la gran¬
de disponibilità di componenti sia originali
che moderni adattabili alla bisogna e poco
costosi, non è più appannaggio di pochissi¬
mi “geak”. La sfida non è quella degli anni
‘80 ma la passione rimane quella dei “bei
giorni” e si possono ottenere grandi risul¬
tati non tanto per un utilizzo reale di questi
“fai da te”, quanto per il bagaglio tecnico che
inevitabilmente si acquisisce nel progressivo
superamento dei piccoli e grandi problemi
che questa sfida propone.
Il componente più importante, indispensa¬
bile addirittura, è appunto la voglia di farlo.
È la molla che ha spinto un nostro affeziona¬
to lettore e appassionato di retro-informati¬
ca che ci ha inviato il suo progetto.
Lasciamo quindi la parola a Stefano Bian¬
chini, in arte “Gizmo”.
Perché
o voluto costruire queste sche¬
da perché io sono dell’epoca del
Commodore 64, lettore di riviste
di elettronica nei primi anni go, dove vede¬
vo che realizzavano schede da connettere al
C64 per fare varie cose, tipo accendere luci,
lavatrici, aprire cancelli ed ero affascinato
da queste cose. Non ero in grado allora, per¬
ché troppo giovane e inesperto, di cimentar¬
mi in tali realizzazioni. I miei pruni 15 anni
di vita lavorativa li ho passati assemblando
e riparando PC, ma non c’era quel gusto che
ricordavo dalla mia adolescenza; realizzan¬
do questa scheda con lo Z80 ho soddisfatto il
desiderio che avevo da ragazzino.
L’idea
Ci sono moltissimi siti on-line che descri¬
vono progetti simili a quello che avevo in
mente. Molti offrono anche kit più o meno
completi, ad esempio lo stampato, ma io vo¬
levo fare tutto da solo documentandomi e
prendendo da ciascun progetto le parti che
facevano al mio caso.
Allora l’hardware di base l’ho copiato da
un sito molto completo [1 ].
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
■I yi
Cacciavite e saldatore...
La realizzazione
Ho rifatto il PCB in una versione che si
potesse produrre con mezzi poveri [vedi
foto 1 e 2] e ho iniziato a prendere dime¬
stichezza con la programmazione in C
utilizzando il Development Kit Z88DK
[2] poi ho iniziato a pensare come si po¬
tesse migliorare il progetto, ad esempio
lui ha usato una Eprom da 32k ma il suo
monitor software occupava solo sk il re¬
sto dello spazio era inutilizzato; inoltre è
noioso caricare dalla seriale ogni volta il
programma che si vuol far girare e per
fare modifiche al monitor è necessario
ogni volta riprogrammare la Eprom.
Ho quindi realizzato un hardware per
interfacciare una compact-fiash con il
bus dello Z80, questa è semplicissima
anche se vedendo altre cose che si tro¬
vano su internet non si direbbe. Le CF
possono emulare un disco IDE (quindi
con un bus a ìóbit) e diverse persone che
hanno realizzato computer con lo Z80 (o
altre CPU a 8bit) ingenuamente hanno
fatto interfacce piene di chipettini logi¬
ci per accedere alla CF a ìóbit, ma le CF
sono memorie a 8bit (infatti io ho scritto
che possono emulare un disco IDE) ma
di fatto una CF si può interfacciare DI¬
RETTAMENTE al bus dello Z80 senza
nessuna logica frapposta e trasferire i
dati 8 bit alla volta, l’unica cosa che bi¬
sogna fare è accedere al registro delle
features e inizializzarla a 8bit.
Cosi’ ho passato il tempo libero dell’e¬
state a scrivere le routines in C per po-
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
41
ter accedere alla compact flash dallo Z8o,
prima ho scritto le routines a basso livello
per inizializzarla, leggere un settore, scrive¬
re un settore, cancellare un settore, ho fatto
pesantemente uso di matematica a 32bitper
poter calcolare gli indirizzi LBA, al momen¬
to uso solo 24bit effettivi di indirizzo + 8bit
per impostare master/slave, quindi pos¬
so indirizzare 8Gb, ma il passo per usare
un’indirizzo a 32bit intero e poter accedere
a 512Gb è veramente minimo (anche se pro¬
babilmente inutile).
Finita la scrittura delle routines per acce¬
dere a basso livello alla CF ho modificato il
monitor che stava in ROM cancellando qua¬
si tutto il codice e trasformandolo in un bios
che all’accensione non fa altro che caricare
in ram i primi 48 settori della CF e poi lan¬
ciando l’esecuzione del primo indirizzo del¬
la ram, in questo modo potevo copiare in
modo raw un mio binario sulla CF e la sche¬
da Z80 all’accensione avrebbe eseguito quel
programma. Ho rimodificato il monitor di
base della MK2 per poter girare in RAM e
l’ho espanso aggiungendo comandi e tutte
le routines necessarie ad accedere alla CF e
ho sviluppato poi un file System di testa mia,
quindi ho ottenuto un vero e proprio DOS, il
kernel del sistema operativo occupa i primi
48settori del disco e il file System inizia su¬
bito dopo, è quindi possibile riformattare la
CF senza perdere il sistema operativo, que¬
sto metodo è molto simile a quello usato dai
computer Apple.
Al momento nell’interprete dei comandi
che ho scritto sono presenti pochi comandi di
base che si vedono elencati nel video quando
chiamo “help”, ho implementato giusto ieri
sera i parametri sulla linea di cornando: nel
video si vede ad esempio che se faccio rnkdir,
il cornando mi dà un dialog dove mi chiede
il nome della directory che voglio creare,
ora invece posso fare direttamente “rnkdir
nome_carfella”, il binario compilato occupa
al momento i8k, io ho scritto 40k di codice
sorgente che non sono pochi.
Lo stato del progetto
Al momento mi sono messo in pausa con
10 sviluppo software perché devo lavorare
ma soprattutto perché’ ormai è il momento
di evolvere l’hardware, ho già modificato lo
schema del MK2 originale per ospitare una
Eprom da soli 4k (più che sufficienti per il
bios) e una RAM da Ó4k, senza fare le ca¬
priole con l’hardware i primi 4k della RAM
non saranno accessibili, la scheda quindi di¬
sporrà di 6ok di ram utilizzabile. Sarà inte¬
grato a bordo lo zoccolo per la compact flash
e devo ancora decidere il tipo di connettore
da usare per le schede di espansione, pro¬
babilmente a pettine, quello usato dal tizio
inglese per l’MK2 è veramente scomodo da
utilizzare e va aggiunto anche un circuito
che tiene basso il reset qualche istante quan¬
do alimenti la scheda perché’ la MK2 spesso
quando viene alimentata si blocca e va reset¬
tata quasi tutte le volte. Il mio scopo finale è
costruire una motherboard che sia autosuf¬
ficiente con un sistema operativo fàcilmente
aggiornabile e totalmente modificabile dove
ci si possa divertire costruendo espansioni
hardware e scrivendo il software per farle
funzionare, io trovo che questo approccio
sia molto più ludico rispetto ai vari Arduino
o Raspberry, Arduino è senzaltro una bella
cosa ina è una MCU e non puoi vedere fisi¬
camente le varie parti (ram rom cpu seriali
etc) come entità separate, sono schede più
che alti'o pensate per far girare firmware
per compiti specifici e non un sistema opera¬
tivo, invece su raspberry è già tutto fatto, lo
prendi ci installi Linux e sostanzialmente hai
11 software già scritto per fare praticamente
ogni cosa, puoi aggiungere pezzi ma spesso
pure quelli già preconfezionati ed infine svi-
42
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Cacciavite e saldatore...
luppare software dentro un sistema ope¬
rativo cosi’ complesso come Linux richie¬
de anche di conoscerlo bene e di sapere
come funziona invece su questa scheda
con lo Z8o è tutto più semplice, met¬
ti una periferica connessa al BUS e dal
programma Cfai “outp(dato,indirizzo)”
per mandargli un byte e vedere cosa fa,
e “variabile = inp(indirizzo)”per leggere
cosa ti manda indietro, fine, tutto sem¬
plicissimo. Non ho problemi ad ammet¬
tere che pròna di costruirla non avevo la
minima idea di come si programmava in
C, e ora sono qui a scrivere un SO.
Il sito che ospita il progetto si trova al
riferimento [4]. Nella sezione download
del sito sono disponibili i sorgenti.
Conclusione
Penso che per ora quello che posso dir¬
vi del mio progetto è tutto qui. Ho inten¬
zione di migliorarlo cominciando con la
realizzazione di una versione più profes¬
sionale della scheda madre e proseguen¬
do nel completamento del progetto come
sistema completo stand-alone facilmen¬
te aggiornabile e programmabile.
(=)
Riferimenti
[1] - http://www.allthingsrnicro.com/
index.php/projects/20-z8o-based-com-
puter
[2] - http://sourceforge.net/projects/
z88dk/
[3] ~ http://www.gizrnoblog.eu
[4] - http://www.zilog8o.eu
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
43
DELETE. A Design History
of Computer Vapourware
di Sonicher
Introduzione
S uando ho avuto notizia di questo
volume non ci potevo credere: un
libro che racconta il design delle
iature informatiche! E soprattut¬
to quel design che non ha mai visto la realiz¬
zazione industriale se non la faseprototipale
(bruttissimo inglesismo).
L’ho letteralmente divorato, pagina dopo
pagina, immagine dopo immagine, disegno
dopo disegno... E’ assolutamente fantastico!
Quando poi in redazione si è cominciato a
parlare di un articolo o più articoli che pren¬
dessero spunto dalle macchine mai realizza¬
te o mai commercializzate, ho colto la palla
al balzo e ho preteso di lavorarci io a questa
serie. Il primo “parto” è l’articolo sul Super
QL che potete leggere in questo fascicolo.
E’ un tema davvero affascinante: scopri¬
re come non la realizzazione elettronica del
computer ma l’idea di funzionalità e bellez¬
za, cioè di uno “stile”, sia stata perseguita da
dei veri maestri, come appunto Paul Atkin-
son, autore del libro.
Delete, cioè i progetti cancellati
Dopo le prime realizzazioni di computer
“horne” o comunque personali, si cominciò
a capire che non poteva il tutto esaurirsi in
una tastiera da telescrivente; ci voleva di
più, anche per distinguersi dai concorrenti
e per portare avanti il “marchio di fabbrica”
che distinguesse l’azienda.
Ogni realizzazione negli anni ‘80 si incana¬
lava verso questa idea, con poche variazioni
e qualche “alzata di ingegno” per evolvere.
Se ci pensate l’Apple ][ è uguale al //e che è
quasi uguale all’Apple /// e il //c, non dico
che non sia indistinguibile, ma come idea ge¬
nerale si avvicina molto ai fratelli maggiori.
E il Commodore 64 non è il gemello del
Vic20? Non parliamo poi delle cosiddette
“macchine da ufficio”: i vari TRS si clonano
generazione dopo generazione (parliamo
della linea estetica generale).
Sinclair era partito con il giocattolo ZX80
per cambiare in una livrea più seria con lo
ZX81 e poi lo Spectr'um che, d’accordo è di¬
verso dai predecessori, ma poi mica troppo!
44
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
I volumi che raccontano la storia dell’informatica
SJMLoJ^Qa.
Sinclair fu uno dei primi a capirlo che un
sistema doveva anche essere “bello”. La pa¬
ternità assoluta di certe idee è diffìcile da at¬
tribuire, diciamo che le idee sono nell’aria e
qualcuno che sa coglierle al momento giusto
le fa proprie. Steve Jobs era un maestro in
questo!
Il T'isultato per la Sinclair Research poteva
essere quello che viene mostrato nella coper¬
tina del libro e più in dettaglio nell’articolo
che ho citato: un QL “evoluto” con degli in¬
serti colorati e l’inclusione di una tecnologia
nuova in un involucro sia funzioiiale al fat¬
tore di forma dell’oggetto elettronico stesso,
ma anche parte “movimentante” della linea
estetica del sistema.
Le pagine del volume scorrono rapide
sotto le dita e gli occhi si riempiono di og¬
getti, spesso solo dei disegni o dei “concepì
project” costruiti di plastica, giusto per dare
l’idea di come verranno. Qualcuno si ricono¬
sce, qualche idea è proprio quella che poi il
produttore ha realizzato o che ritroviamo in
soluzioni analoghe.
Il lavoro del design, così riassunto non vie¬
ne valorizzato per intero. Sembra quasi che
sia facile arrivare alla soluzione mostrata!
Invece ci vogliono ore e ore di lavoro per
spostare, limare, cancellare, confrontare
soluzioni abbozzate... E poi si aT'riva alla
fase di progettazione vera e propria e allora
contano anche gli ingegneri, le macchine as-
semblatrici, il materiale, il costo di ogni ele¬
mento, comprese le viti che chiudono i gusci
di plastica!
In questa fase si scopre spesso che “l’idea
è buona ma irrealizzabile” o che “bello, ma
costa troppo” e altre ft'asi di giustifica per il
taglio del progetto.
Peccato però che IBM non abbia poi realiz¬
zato quei due coloratissimo home che ven¬
gono descritti nella pagine del volume e ci
abbia invece rifilato un PC Junior davvero
brutto (oltre che ciofeca dal punto di vista
informatico).
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Ma non solo computer: ci sono anche te-
lefonini, abbozzi di tablet, e quant’altro è
venuto in mente di fabbricare alle industrie
elettroniche fino al 2000 nel comparto in¬
formatica e telecomunicazioni.
Conclusione
Il libro non è dei più economici (circa 40
Euro su Amazon) ma sono giustificati dalla
ricchezza di immagini e soprattutto da in¬
formazioni e retroscena che difficilmente si
possono reperire altrove.
Se non intendete fare questo investimento
per la vostra biblioteca di retro informatica,
almeno cercate una biblioteca che lo possie¬
da e prendetevi un pomeriggio per sfogliar¬
lo; ne sarà valsa la pena.
(=)
Reference.
“Delete: A Design History of Compu¬
ter Vapourware” by Paul Atkinson
ISBN-13: 978-0857853479
ISBN-10: 0857853473
45
SNOBOL (Parte 4)
di Salvatore Macomer
J l metodo migliore per imparare un
linguaggio o anche solo per esplo¬
rarne le caratteristiche principali, è
quello di analizzare i programmi via via più
complessi.
Ad esempio vi ricordate l’algoritmo “Bub-
ble Sort” per ordinare un vettore di ele¬
menti? L’algoritmo è semplice: si procede
esanimando un elemento del vettore e il suo
successivo e scambiandoli di posto se non
risultano ordinati. Scandendo n volte il vet¬
tore e tenendo conto del numero di scambi
che si effettuano, ci si ritrova con il vettore
ordinato quando l’ultima scansione non ha
prodotto scambi.
Come si programma un simile algoritmo in
linguaggio SNOBOL?
Il metodo migliore per imparare un lin¬
guaggio o anche solo per esplorarne le ca¬
ratteristiche principali, è quello di analizza¬
re i programmi via vi più complessi.
Ad esempio vi ricordate l’algoritmo “Bub-
ble Sort” per ordinare un vettore di ele¬
menti? L’algoritmo è semplice: si procede
esaminando un elemento del vettore e il suo
successivo e scaìnbiaìidoli di posto se non
risultano ordinati. Scandendo n volte il vet¬
tore e tenendo conto del numero di scambi
che si effettuano, ci si ritrova con il vettore
ordinato quando l’ultima scansione non ha
prodotto scambi.
Come si programma im simile algoritmo in
linguaggio SNOBOL?
Nel box della pagina a fronte l’esempio
tratto dal libro “THE SNOBOL4 PROGRAM¬
MINO LANGUAGE” (vedi ref), che discute¬
remo per capire la sintassi del linguaggio.
Penso che tutti abbiano capito che le righe
che incominciano con l’asterisco sono dei
commenti. Il sorgente è scritto in maiuscolo
perché, forse lo sapete, una volta i calcola¬
tori non avevano le minuscole né come ca¬
ratteri in memoria e ovviamente nemmeno
sulle tastiere.
46
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
I linguaggi di programmazione
A parte la banale definizione di una varia¬
bile “globale” TRIM inizializzata al valore 1,
il sorgente definisce tre funzioni con lo state¬
ment DEFINE. Le tre funzioni sono: SORT,
SWITCH e BUBBLE.
La definizione di una funzione prevede
di indicare il nome della funzione, fi'a pa¬
rentesi i parametri di ingresso chiusi nelle
parentesi e come secondo argomento della
DEFINE, e la lista delle variabili locali che
saranno usate nel corpo della funzione.
* BUBBLE SORT PROGRAM
STRIM = 1
DEFINE(‘SORT(N) E)
DEFINE(‘SWITCH(I) TEMP’)
DEFINE(‘BUBBLE(J)’)
* GET NUMBER OF ITEMS TO BE SORTED
N = INPUT
: F(ERROR)
A = ARRAY(N)
* READ IN THE ITEMS
READ I =1+1
A<I> = INPUT
: F(GO) S (READ)
* SORT THE LIST
GO SORT(N)
* PRINT SORTED LIST
M = 1
PRINT OUTPUT = A<M>
: F(END)
M = M+ 1
: (PRINT)
* FUNCTIONS
SORT I = LT(I, N - 1) I + 1
: F(RETURN)
LGT(A<I>,A<I + 1>)
: F(SORT)
SWITCH(I)
BUBBLE(I)
: (SORT)
SWITCH TEMP = A<I>
A<I > = Ad + 1>
Ad + 1> = TEMP
: (RETURN)
BUBBLE J = GT(J, 1) J - 1
: F(RETURN)
LGT(A<J>, A<J + 1>)
: F(RETURN)
SWITCH(J)
: (BUBBLE)
END
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
47
DEFINE CSWITCH(I) TEMP’) definisce la
funzione con nome SWITCH alla quale sarà
passato un valore e la funzione stessa userà
TEMP come area di memoria per fare il suo
lavoro. Lo scopo è semplicemente quello di
scambiare due elementi del vettore da ordi¬
nare.
L’istruzione A = ARRAY(N) definisce A
come nome di una variabile con indice ad
una sola dimensione (un vettore) con N ele¬
menti. Si iloti che il valore N viene letto da
terminale e quindi le matrici in SNOBOL
hanno dimensione definita a run-time.
Il ciclo:
READ I = I+i
A<I> = INPUT
: F(GO) S (READ)
riempie gli elementi del vettore A con i va¬
lori che passiamo da INPUT.
Notate come l’indicizzazione degli elementi
del vettore A faccia uso di parentesi angolari
<>, sintassi piuttosto rara nei linguaggi di
programmazione.
A questo punto si chiama la funzione SORT
passando come parametro di input la lun¬
ghezza del vettore N, letta precedentemente
da console.
SORT I = LT(I, N -1) I + 1
: F(RETURN)
LGT(A<I>,A<I + i>)
: F(SORT)
SWITCH(I)
BUBBLE(I) : (SORT)
Lo SNOBOL utilizza come operatori
di confronto gli stessi del FORTRAN e
cioè LT per LESS THAN (minore di),
GT (GREATER THAN) per maggiore,
etc...
L’istruzione LT(I, N - 1) controlla se la
scansione degli elementi è terminata. Se
vero, cioè se l’indice I, che per la funzio¬
ne SORTO è una variabile locale e quin¬
di inizializzata all’ingresso, ha raggiunto
la fine degli elementi del vettore A<>,
la funzione ritorna. Altrimenti si entra
nell’algoritmo e cioè si confrontano due
elementi contigui del vettore e si procede
allo scambio degli stessi se necessario.
Con LGT(A<I>,A<I + 1>) che è il test
di controllo se l’elemento A<I> è minore
o uguale all’elemento A<I+1>, allora
si continua la scansione, altrimenti si
procede allo scambio dei due elementi
tramite la funzione SWITCHQ.
Gli altri elementi del programma sono
auto esplicativi per chi conosce un po’ di
programmazione “old style”.
Oltre alla costruzione delle matrici tra¬
mite ARRAY, lo SNOBOL prevede un
tipo strutturato chiamato TABLE che è
una struttura indicizzata unidimensionale
di tipo CHIAVE - VALORE.
T = TABLEO
crea la variabile T di tipo TABLE e con
T<NOME> = ‘MARIO’
ci si riferisce all’elemento A della tabella
e assegna ad esso il valore MARIO.
Possiamo dire che TABLE è un record,
nella moderna tipologia dei linguaggi
odierni.
La funzione di costruzione del tipo TA¬
BLE prevede due parametri:
T = TABLE(M, N)
48
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
1 linguaggi di programmazione
dove M è la dimensione iniziale deside¬
rata e N è l’incremento eventuale che si
desidera avere se la dimensione massi¬
ma è insufficiente.
Ad esempio
T = TABLE( 20 , io)
crea la tabella T con dimensione iniziale
di 20 elementi e un incremento progres¬
sivo di dieci elementi quando necessa¬
rio.
Nel box di questa pagina è riportato il
codice di un programma che conta le
parole in un testo. Esso fa uso di una
TABLE, inizialmente definita di 20 ca¬
ratteri e poi incrementata di 10 elementi
all’occorrenza, che sarà indicizzata
con la parola del testo e come valore il
numero di occorrenze di quella parola
nel testo.
Si noti in questo sorgente la semplicità
di isolare la parola nel testo; si usa il
pattern matching:
TOKEN = END . WORD GAP
che ha come scopo restituire una parola
del testo, usata poi nell’indicizzazione
della tabella.
L’istruzione:
COUNT = CONVERT(COUNT, AR¬
RAY’)
Converte la TABLE in un ARRAY, ne¬
cessario per stampare in output l’elenco
delle parole trovate e la relativa occor¬
renza.
(...continua...)
$ANCHOR
= 1
SEPARATOR
= ‘
END
= BREAK(SEPARATOR)
GAP
= SPAN(SEPARATOR)
TOKEN
= END . WORD GAP
COUNT
= TABLE(20,10)
READ
LINE
= INPUT : F(PRINT)
OUTPUT
= LINE
LINE
GAP = : F(PRINT)
NEXTT
LINE
TOKEN = : F(READ)
COUNT<WORD> = COUNT<WORD> + 1 : (NEXTT)
PRINT
OUTPUT
=
OUTPUT
= ‘WORD COUNTS ARE:’
OUTPUT
=
COUNT
= CONVERT(COUNT, ‘ARRAY’) : F(END)
I
= 1
NEXTC
OUTPUT
= COUNT<I,l> , = , COUNT<I,2> : F(END)
I
= 1+1
END
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
49
Geriatrie Linux
by Emery Fletcher
Presentazione
Questa personale storia di Emery Fletcher
fa parte di una raccolta di articoli denomi¬
nata “Geriatrie Linux”, ospitata su Open-
Source.org.
Lo scopo della serie è T'accogliere le espe¬
rienze degli utilizzatori “senior” che si av¬
vicinano a Linux, spesso delusi dalle incon¬
gruenze dei sisterni Microsoft, e che ti'ovano
nel software libero motivi di impegno e oc¬
casione di divertimento.
Vogliamo ospitarne qualcuna sulla no¬
stra rivista come stitnolo per chi ha paura
a cimentarsi in pròna persona con un cal¬
colatore e come testimonianza del valore
dell’informatica non precotta, ma quella che
si guadagna giorno dopo giorno con l’impe¬
gno, la curiosità e la voglia di imparare.
Proprio come succedeva a noi trenta anni
e più fa!
My Linux Story
otto nato nel 1933, un’epoca dove
non esisteva ancora il computer,
ma nemmeno la TV e l’energia ato¬
mica... Nei miei primi settanta anni non ho
avuto alcun desiderio di cimentarmi con un
calcolatore!
Quando mi ritirai in pensione nel 2002
andai a vivere in una località di montagna
distante cinquanta miglia dalla città più vi¬
cina. Volendo proseguire in una attività di
part-time per la ditta dove avevo lavorato,
fui istruito alle basi del computer e comin¬
ciai a utilizzarlo.
Avrei voluto approfondire l’utilizzo di que¬
sta macchina perché capivo le sue potenzia¬
lità quale strumento di collegamento con il
mondo, abitando in una località così lonta¬
na da un ambiente cittadino. Purtroppo mi
resi conto che avrei avuto bisogno di aiuto e
non era facile trovarlo nella mia situazione.
Finché non conobbi un vicino di casa che
gestiva una attività commerciale di suppor¬
to informatico nella città vicina. Accettò di
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Viaggio nei mondi reali e virtuali
consigliarmi una macchina adatta alle mie
esigenze, di configurarla e di assistermi per
un prezzo che era la metà di quanto normal¬
mente chiedeva ai suoi clienti.
Fu così che diventai un felice possessore di
un nuovo PC Compaq e utilizzatore del sim¬
patico nuovo sistema operativo Windows
XP.
La possibilità di connettersi ad Internet
era limitata ad un servizio telefonico a 2
Kbit/sec, ma siccome dovevo inviare solo
dei documenti, la cosa non mi disturbava
eccessivamente.
Questo durò finché nel tempo libero che la
mia attività part-time mi concedeva venni
attratto dall’esplorazione di un mondo com¬
pletamente nuovo per me: Internet.
Avevo sempre pensato che fosse una spe¬
cie di sala giochi per ragazzini, ma dopo
qualche anno realizzai che incredibile risor¬
sa era la Rete e che tipo di potere detenevo
sotto le mie dita.
Il computer era diventato un fedele com¬
pagno e giorno dopo giorno avevo voglia di
imparare sempre di più, anche perché non
mi sembrava così
misterioso come
all’inizio del mio
incontro con esso.
Cominciai a leg¬
gere molto sul
computer e ri¬
masi affascinato
da un progetto di
sisterna operati¬
vo che sembrava
sfidare tutti i mo¬
delli commercia¬
li: Linux.
Mi affascinava
l’idea della liber¬
tà, del fatto che
fosse stato ideato
da uno studente
liceale e sviluppato da volontari e che venis¬
se usato in ambiti molto diversi e da persone
con diverso skill.
Mi sarebbe piaciuto provare ad usarlo ma
temevo di rovinare qualcosa sulla mia mac¬
china, che mi serviva anche per lavoro e non
potevo permettermi di rischiare di perdere
qualcosa o di dover chiedere la reinstalla¬
zione daccapo di tutto il sistema e dei pro¬
grammi (mi sarebbe costato una piccola
fortuna!).
Chiesi al mio vicino di casa, con il quale
avevo stipulato un contratto di assistenza
e che gestiva il mio sistema, se conoscesse
Linux.
La sua risposta fu: “So come si scrive”.
Capii dal tono in cui lo disse che la pensa¬
va come Steve Ballmer: “Linux era il cancro
dell’informatica e bisognava starne alla lar¬
ga”.
Giudicai prudente non approfondire oltre:
il computer che ormai occupava una parte
così importante del mio tempo dipendeva da
quel vicino! Era lui che una volta all’anno lo
aggiornava e lo rimetteva in ordine per l’ot-
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
5
timale funzionamento e era sempre lui che
mi risolveva qualsiasi problema mi trovassi
ad affrontare, come 1’aggiunta di una stam¬
pante, l’aggiornamento del programma di
scrittura, il collegamento ad Internet con il
modem,... insomma tutto!
Giudicai pertanto saggio non irritare que¬
sta persona; infondo il suo business era l’as¬
sistenza informatica e viveva grazie ai ser¬
vizi e al software a pagamento che offriva
alla sua clientela. Era logico che non vedesse
di buon occhio una filosofia che metteva al
centro l’utente e che prometteva di liberarlo
del costo e delle pastoie delle licenze e della
necessità di pagare degli esperti per conti¬
nuare a lavorare.
Però, sia perché sono curioso di natura e
sia perché dalle letture tecniche che avevo
fatto, non volevo lasciar perdere l’approfon¬
dimento di quell’argomento. Così ho conti¬
nuato a leggere su Linux: ho comprato un
paio di libri e delle riviste, scoprendo (se la
letteratura diceva il vero) che non sembrava
poi così difficile installarlo su un PC e prose¬
guire poi con l’utilizzo “normale” della mac¬
china, pur con programmi e comportamenti
diversi.
“Pròna o poi” - mi ripetevo - “farò questo
passo! .
Il momento fatidico venne pri¬
ma di quanto immaginassi: fu in
occasione della pulizia animale
del mio PC (si era nel 2007) che
il mio vicino di casa me lo restituì
dichiarando che si stava trasfe¬
rendo e che non avrebbe più potu¬
to seguirmi.
Fui preso dal panico! Come avrei
fatto ora, lontano cinquanta mi¬
glia dalla città più vicina e senza
conoscere nessuno che mi avrebbe
aiutato nell’aggiornamento della
macchina e nella pulizia annua¬
le? E i virus? Cosa conoscevo dei
virus e quando avrei saputo che il computer
necessitava di aggiornamento e chi me lo
avrebbe eseguito?
Ero convinto che Windows non fosse affat¬
to un sistema semplice: sì, era semplice da
usare ma tutt’altro da configurare, gestire e
aggiornare! Non era un prodotto “fai da te”,
insomma!
C’era Linux, lo sapevo e avevo letto mol¬
tissimo su di esso, ma ero intimidito: con
Windows il messaggio era: “se hai proble¬
mi, lasciali all’esperto”, con Linux sarebbe
diventato: “Sei tu l’esperto!”.
Avevo letto abbastanza per dissuadermi
dal provare Linux direttamente sul mio PC e
non abbastanza sicuro per lanciarmi inpar-
tizionamento del disco, menù di boot, etc...
(tutte cose che adesso sono banali per me).
Tuttavia scoprì presto che un PC analogo al
mio, con Pentium 4, da usato valeva quello
che pagavo di manutenzione annuale! Così
me ne procurai uno nell’aprile del 2009 da
destinare alle prove.
Quasi tutti i libri e le riviste su Linux inclu¬
devano un CD-ROM o un DVD-ROM utile
all’installazione con varie distribuzioni. La
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
Viaggio nei mondi reali e virtuali
mia idea era di pi'ocedere all’installazione
una ad una di questi sistemi sulla macchina
di prova. L’idea era di imparare il più possi¬
bile su questo sistema, prima di diventarne
un utilizzatore effettivo.
Mentile mi dilettavo con il mio nuovo gio¬
cattolo, accadde una cosa che mi mise in
crisi: il mio Windows si beccò il virus Confi-
cker. Provai a contattare il sito della Norton
Antivirus o qualsiasi altro sito ufficiale di
Windows che mi potesse aiutare, ma la mia
connessione era troppo leiìta e non potevo
proseguire per questa strada. Che fare? Mi
decisi a prendere la macchina, guidare per
cinquanta miglia per arrivare alla biblio¬
teca della città vicina, scaricare un pulitore
adatto e rimuovere quindi ilfastidioso ospite
dal mio sistema.
La cosa si svolse con una naturalezza che
non immaginavo! Solo qualche mese prima
mi sai'ei rassegnato a consegnare la mac¬
china ad un negozio e ripassare a prenderla
una settimana dopo. Ora invece sapevo cosa
andava fatto e lo feci!
Senza volerlo ero diventato l’amministra¬
tore del mio Windows!
irmi da solo un computer con CPU a 8 core,
una scheda grafica “da paura” e tanta, tan¬
tissima RAM!
Ben presto rùnossi quello che restava di
Windows sul Compaq, ormai vecchio di 12
anni, che ora esegue una tranquilla distribu¬
zione MX-14 e lo uso come server casalingo.
E’ incredibile quanto ho imparato con Li¬
nux dal 2003 in poi! Invece di usare il PC
passivamente, come un televisore o come
Windows vuole che tu lo utilizzi, ora ho un
ruolo attivo e non permetterò a Microsoft o a
qualcun alti'o di influenzare le mie decisioni
informatiche!
E’ stato l’inizio del mio pensionamento at¬
tivo!
(=)
Cominciai ad interessarmi anche
di hardware e di aggiornamento
delle mie ormai diventate 6 mac¬
chine con nuova RAM, schede gra¬
fiche più potenti, etc...
Per il mio yg A compleanno, nel
2012, mi regalai i pezzi per costru-
E’ escluso che ci sarei j'iuscito senza le espe¬
rienze accumulate nell’installazio¬
ne delle distribuzioni Linux.
Quando qualche mese dopo arri¬
vò la possibilità di una connessio¬
ne DSL, fui in grado di configurare
tutto da solo sia su Windows che
su Linux.
Jurassic News - Anno 11 - numero 57 - Febbraio 2016
53
Nel prossimo numero l’ultima
creatura di Chuck Peddle: il sistema
professionale Sirius-1/Victor 9000